JAX WS с com.sun.net.HttpServer и .net - PullRequest
       14

JAX WS с com.sun.net.HttpServer и .net

0 голосов
/ 10 января 2011

У меня очень неприятная проблема. У меня есть веб-сервис, созданный с помощью JAX WS аннотации и трюк Endpoint.publish (...). Конечно, он использует com.sun.net.HttpServer. Когда я пытаюсь добавить ссылку на службу в Visual Studio, она не сдвинется с места. Сервер говорит:

неподдерживаемый тип контента: принимается только текст / xml

Но .net спрашивает с типом содержимого application / soap + xml.

Как мне изменить тип контента в jax ws? Или, как мне изменить тип контента в Visual Studio, добавить ссылку.

Спасибо. Это очень расстраивает!

1 Ответ

2 голосов
/ 10 января 2011

После поиска в Google я нашел ...

Привет,

Я решил проблему.

'application / soap + xml' - это тип содержимого, используемый для сообщений SOAP 1.2, тогда как text / xml используется для SOAP 1.1.Следовательно, клиент отправляет запросы SOAP 1.2, а служба ожидает только SOAP 1.1.

Metro по умолчанию использует SOAP 1.1.Как включить привязку SOAP 1.2, объясняется здесь: - http://forums.java.net/jive/thread.jspa?messageID=322894 - https://metro.dev.java.net/1.4/docs/soap12.html

Ссылка .Надеюсь, это поможет:)

РЕДАКТИРОВАТЬ: попробуйте следующие аннотации ...

@WebService 
@BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING) 

ИЛИ

Endpoint endpoint = Endpoint.create("http://java.sun.com/xml/ns/jaxws/2003/05/soap/bindings/HTTP/", impl); 
endpoint.publish("http://localhost:9080/PatientDiscovery"); 
...