2 Replies Latest reply on Aug 12, 2008 2:34 PM by Vladyslav Kosulin

    How to get complex types fully defined by exposed WSDL

    Michael McGovern Newbie


      I've got a web service EJB with a method signature that includes some of our own classes.

      Problem is that the exposed WSDL defines these classes as complex but then does not provide the detailed definition - meaning that a client would not be able to dynamically call the method based purely on reading the WSDL.

      Is there a way to get the exposed WSDL to fully define the complex types?

      Code fragment and generated WSDL follows.


      JBoss AS 4.2.0

      @WebService(name = "EnquireAccountServiceBean", targetNamespace = ServiceConstants.WEB_SERVICE_NAME_SPACE, serviceName = "EnquireAccountServiceBean")
      @WebContext(contextRoot = "/XMLTranServiceBeanService")
      @SOAPBinding(style = SOAPBinding.Style.RPC)
      @Stateless(name = "EnquireAccountServiceBean")
      public class EnquireAccountServiceBean extends BaseServiceBean implements EnquireAccountService {

      public AccountBalance enquireAccountBalance(TransactionInfo info, String accountNum) {

      Exposed WSDL:

      <xs:schema targetNamespace="http://www.whatever.com" version="1.0">
      <xs:complexType name="transactionInfo"/>
      <xs:complexType name="accountBalance"/>