Используя Spring XML, создайте JAX-WS Client без serviceClass - PullRequest
0 голосов
/ 15 сентября 2010

Я знаю, что возможно создать конечную точку jaxws: без SEI, при условии, что у вас есть адрес wdslURL, serviceName & endpointName,

Я вижу много примеров о wsdl2java, а затем использую этозначение класса в качестве атрибута serviceClass.И много примеров на основе Java, меня больше интересует XML на основе Spring.

Например, вот что у меня сейчас есть, где оно мне не нравится:

    <jaxws:client id="jaxwsIngest"  xmlns:n="webservice.ingest" 
            address="http://localhost:8088/IngestService" 
            wsdlLocation="http://localhost:8088/IngestService?WSDL" 
            serviceName="n:IngestService" 
            endpointName="n:IngestServicePort"> 
            <jaxws:properties> 
                    <entry key="dataFormat" value="PAYLOAD"/> 
            </jaxws:properties> 
    </jaxws:client> 

Этоможно сделать что-то похожее на jaxws: конечную точку для jaxws: client?На самом деле все, что у меня есть, это файл WSDL и IP-адрес WebService.

Есть ли способ опроса и получения значения serviceClass через GET?Например, как мы это делаем http: //? WSDL

Все примеры, которые я вижу, подтверждают необходимость атрибута serviceClass.

Заранее спасибо, Аарон

1 Ответ

0 голосов
/ 08 декабря 2010

Поскольку этот вопрос открыт через 2 месяца, я чувствую, что могу дать ответ, несмотря на свои скудные знания о внутренней работе JAX-WS (и без весны).

Причина, по которой вам нужен класс обслуживания, заключается в том, что функции getPort являются общими и возвращают экземпляр этого класса (или, скорее всего, интерфейс). Этот класс генерируется путем переваривания wsdl (посмотрите муравьиные wsconsume ). Это интерфейс для звонков в веб-сервис. Подробнее: http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/

Другие полезные ответы:

Клиент JAX-WS: какой правильный путь для доступа к локальному WSDL?

JAX-WS Загрузка WSDL из банки

Если вы хотите сгенерировать ServiceClass на лету без локальной копии интерфейса, тогда вам нужно будет сделать что-то сверхъестественное. Это за пределами меня и большей части Google, хотя я видел некоторые сообщения людей, делающих это для своей диссертации.

...