Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > дескрипторы Web-service'ов и сложные типы


Автор: smbd 31.1.2006, 15:17
Я делаю так.

Имею JBoss 4.0.2, внутри него живёт Axis (встроенный).

Делаю web-service. В качестве дексрипторов у меня файлы
web.xml
jboss-web.xml
webservices.xml
jaxrpc-mapping.xml
и мой .wsdl файл, на который ссылается webservices.xml

Пока всё просто и типы простые - хорошо, работает.

Когда мне надо вернуть массив строк, добавляю в jaxrpc-mapping.xml описание этого типа
Код

    <java-xml-type-mapping>
        <java-type>java.lang.String[]</java-type>
        <root-type-qname xmlns:typeNS="urn:MyNamespace">
            typeNS:ArrayOf_xsd_string
        </root-type-qname>
        <qname-scope>complexType</qname-scope>
    </java-xml-type-mapping>


Так же ant-task axis-java2wsdl добавляет в .wsdl файл строки с описанием этого ArrayOf_xsd_string. Тоже работает.

Но мне нужно вернуть сложный тип. Да, хоть точку Point
Код

public class Point{
public int x ;
public int y ;
}


axis-java2wsdl не пишет .wsdl ни слова о моём типе. Естествнно, итоговый .war и не деплоится... Да и в jaxrpc-mapping.xml я не могу написать, какой это будет тип, не зная его имени из .wsdl...

Как быть???

P.S. я так понимаю, можно деплоить только с двумя дескрипторами: web.xml и .wsdd (в нём описываются сложные типы). Может, стоит перейти на такой вариант? Если у кого есть такой пример - поделитесь, пожалуйста!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)