1 Reply Latest reply on Nov 11, 2004 7:17 PM by Thomas Diesler

    Document/Literal web service not

    Patrick Murphy Newbie

      I have created a test application so that I can get used to working with web services. I can build and deploy it without error. When I try to look at the services via the http://localhost:8080/ws4ee/services URL thr following error message is produced:

      ======================================
      And now... Some Services
      AXIS error

      Sorry, something seems to have gone wrong... here are the details:

      Exception - org.apache.axis.InternalException: java.lang.Exception: The OperationDesc for concatenate was not synchronized to a method of edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.
      ======================================

      I used the wscompile from jwsdp1.4 and xdoclet to build the xml descriptors. Since I am new to JBossWS, I am not sure if I am missing some piece of configuration. I can share the source to all of this if needed.

      I have turned debugging on in the log and it shows the following:

      ======================================
      2004-11-11 11:41:14,875 INFO [org.jboss.ejb.EjbModule] Deploying /wstest/TestService
      2004-11-11 11:41:14,984 INFO [org.jboss.ejb.EJBDeployer] Deployed: file:/C:/home2/jboss/server/aistech/deploy/wstest-service.jar
      2004-11-11 11:41:15,015 DEBUG [org.jboss.webservice.WSDLDefinitionFactory] getBaseInputSource [wsdlUrl=jar:file:/C:/home2/jboss/server/aistech/tmp/deploy/tmp57708wstest-service.jar!/META-INF/wsdl/TestService.wsdl]
      2004-11-11 11:41:15,015 DEBUG [com.ibm.wsdl.xml.WSDLReaderImpl] Retrieving document at 'jar:file:/C:/home2/jboss/server/aistech/tmp/deploy/tmp57708wstest-service.jar!/META-INF/wsdl/TestService.wsdl'.
      2004-11-11 11:41:15,156 DEBUG [org.jboss.webservice.metadata.WebserviceDescriptionMetaData] Replace port location 'REPLACE_WITH_ACTUAL_URL' with 'http://0.0.0.0:8080/wstest-service/TestService'
      2004-11-11 11:41:15,187 INFO [org.jboss.webservice.WSDLFilePublisher] WSDL published to: file:/C:/home2/jboss/server/aistech/data/wsdl/wstest-service.jar/TestService.wsdl
      2004-11-11 11:41:15,203 DEBUG [org.jboss.webservice.AxisService] Generating deployment wsdd
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}makeBean2Response
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}throwExceptionResponse
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}concatenateResponse
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}echoStringResponse
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}makeBean2
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}makeBeanResponse
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}echoString
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}throwException
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}echoBeanResponse
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}echoBean
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}makeBean
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}concatenate
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}Bean
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://wstest.ais.msu.edu/types}ServiceException
      2004-11-11 11:41:15,406 DEBUG [org.jboss.webservice.deployment.ServiceDescription] No ws4ee deployment meta data available
      2004-11-11 11:41:15,484 INFO [org.jboss.webservice.AxisService] WSDD published to: C:\home2\jboss\server\aistech\data\wsdl\wstest-service.jar\TestService.wsdd
      2004-11-11 11:41:15,531 DEBUG [org.jboss.webservice.EngineConfigurationFinder] Found config at: file:/C:/home2/jboss/server/aistech/deploy/jboss-ws4ee.sar/META-INF/axis-server-config.xml
      2004-11-11 11:41:15,546 DEBUG [org.apache.axis.AxisEngine] Enter: AxisEngine::init
      2004-11-11 11:41:15,640 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] getBundle(org.apache.axis,org.apache.axis.i18n,resource,null,...)
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] loadBundle: Ignoring MissingResourceException: Can't find bundle for base name org.apache.axis.resource, locale en_US
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] Created org.apache.axis.i18n.resource, linked to parent null
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] getBundle(org.apache.axis,org.apache.axis.utils,resource,null,...)
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] loadBundle: Ignoring MissingResourceException: Can't find bundle for base name org.apache.axis.utils.resource, locale en_US
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] loadBundle: Ignoring MissingResourceException: Can't find bundle for base name org.apache.axis.resource, locale en_US
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] Root package not found, cross link to org.apache.axis.i18n.resource
      2004-11-11 11:41:15,656 DEBUG [org.apache.axis.i18n.ProjectResourceBundle] Root package not found, cross link to org.apache.axis.i18n.resource
      2004-11-11 11:41:15,671 DEBUG [org.apache.axis.utils.JavaUtils] Attachment support is enabled? true
      2004-11-11 11:41:15,703 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory(class java.lang.String, {http://xml.apache.org/xml-soap}PlainText)
      2004-11-11 11:41:15,781 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory(class java.awt.Image, {http://xml.apache.org/xml-soap}Image)
      2004-11-11 11:41:15,781 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory(class javax.mail.internet.MimeMultipart, {http://xml.apache.org/xml-soap}Multipart)
      2004-11-11 11:41:15,796 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory(interface javax.xml.transform.Source, {http://xml.apache.org/xml-soap}Source)
      2004-11-11 11:41:15,796 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory(class org.apache.axis.attachments.OctetStream, {http://xml.apache.org/xml-soap}octetstream)
      2004-11-11 11:41:15,796 DEBUG [org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory] Enter/Exit: JAFDataHandlerDeserializerFactory()
      2004-11-11 11:41:15,921 DEBUG [org.apache.axis.AxisEngine] Exit: AxisEngine::init
      2004-11-11 11:41:15,921 DEBUG [org.jboss.webservice.server.ServerEngine] new ServerEngine [config=org.apache.axis.configuration.FileProvider@933cba]
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @a8e2b8setReturnType({http://wstest.ais.msu.edu/types}concatenateResponse)
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @a8e2b8 added parameter >name: {http://wstest.ais.msu.edu/types}concatenate
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}concatenate
      javaType: null
      inHeader: false
      outHeader: false
      @1d56bbe<total parameters:1
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @94a28esetReturnType({http://wstest.ais.msu.edu/types}echoBeanResponse)
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @94a28e added parameter >name: {http://wstest.ais.msu.edu/types}echoBean
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}echoBean
      javaType: null
      inHeader: false
      outHeader: false
      @3c40f0<total parameters:1
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @1cb4caesetReturnType({http://wstest.ais.msu.edu/types}echoStringResponse)
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @1cb4cae added parameter >name: {http://wstest.ais.msu.edu/types}echoString
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}echoString
      javaType: null
      inHeader: false
      outHeader: false
      @176ee6<total parameters:1
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @71d29asetReturnType({http://wstest.ais.msu.edu/types}makeBean2Response)
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @71d29a added parameter >name: {http://wstest.ais.msu.edu/types}makeBean2
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}makeBean2
      javaType: null
      inHeader: false
      outHeader: false
      @b98a06<total parameters:1
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @114a3c6setReturnType({http://wstest.ais.msu.edu/types}throwExceptionResponse)
      2004-11-11 11:41:15,937 DEBUG [org.apache.axis.description.OperationDesc] @114a3c6 added parameter >name: {http://wstest.ais.msu.edu/types}throwException
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}throwException
      javaType: null
      inHeader: false
      outHeader: false
      @c4cee<total parameters:1
      2004-11-11 11:41:15,953 INFO [org.jboss.webservice.AxisService] Web Service deployed: http://0.0.0.0:8080/wstest-service/TestService
      2004-11-11 11:41:16,000 INFO [org.jboss.web.tomcat.tc5.TomcatDeployer] deploy, ctxPath=/wstest-service, warUrl=file:/C:/home2/jboss/server/aistech/tmp/deploy/wstest-service.jar-webservice57710.war/
      2004-11-11 11:41:16,062 DEBUG [tomcat.localhost./wstest-service.Context] Starting tomcat.localhost./wstest-service.Context
      2004-11-11 11:41:16,062 DEBUG [tomcat.localhost./wstest-service.Context] Configuring default Resources
      2004-11-11 11:41:16,062 DEBUG [tomcat.localhost./wstest-service.Context] Processing standard container startup
      2004-11-11 11:41:16,093 DEBUG [tomcat.localhost./wstest-service.Context] Setting deployment descriptor public ID to '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
      2004-11-11 11:41:16,093 DEBUG [tomcat.localhost./wstest-service.Context] Setting deployment descriptor public ID to 'null'
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Posting standard context attributes
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Configuring application event listeners
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Sending application start events
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Starting filters
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Starting filter 'CommonHeadersFilter'
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Starting completed
      2004-11-11 11:41:16,109 DEBUG [tomcat.localhost./wstest-service.Context] Checking for jboss.web:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/wstest-service
      2004-11-11 11:41:22,812 DEBUG [org.apache.axis.transport.http.AxisServlet] In AxisServletBase init
      2004-11-11 11:41:22,812 DEBUG [org.apache.axis.transport.http.AxisServlet] In servlet init
      2004-11-11 11:41:22,828 DEBUG [org.jboss.webservice.server.ServiceEndpointServlet] doGet: http://localhost:8080/ws4ee/services
      2004-11-11 11:41:22,828 DEBUG [org.jboss.webservice.server.ServiceEndpointServlet] serviceName: null
      2004-11-11 11:41:22,828 DEBUG [org.jboss.webservice.server.ServiceEndpointServlet] Report available services
      2004-11-11 11:41:22,906 DEBUG [org.apache.axis.description.OperationDesc] @755866setReturnType({http://www.w3.org/2001/XMLSchema}string)
      2004-11-11 11:41:22,906 DEBUG [org.apache.axis.description.OperationDesc] @180b4f9setReturnType({http://www.w3.org/2001/XMLSchema}anyType)
      2004-11-11 11:41:22,937 DEBUG [org.jboss.webservice.server.InvokerProvider] initServiceDesc: service=TestService
      2004-11-11 11:41:22,953 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] Create a handler chain for roles: []
      2004-11-11 11:41:22,953 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] init: [config=null]
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Enter: syncOperationToClass org.apache.axis.description.OperationDesc
      name: throwException
      returnQName: {http://wstest.ais.msu.edu/types}throwExceptionResponse
      returnType: {http://wstest.ais.msu.edu/types}throwExceptionResponse
      returnClass: null
      elementQName:{http://wstest.ais.msu.edu/interfaces}throwException
      soapAction: null
      style: document
      use: literal
      numInParams: 1
      method:null
      ParameterDesc[0]:
      name: {http://wstest.ais.msu.edu/types}throwException
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}throwException
      javaType: null
      inHeader: false
      outHeader: false

      FaultDesc[0]:
      name: ServiceException
      qname: {http://wstest.ais.msu.edu/types}ServiceException
      type: {http://wstest.ais.msu.edu/types}ServiceException
      Class: edu.msu.ais.wstest.ServiceException


      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Sync method: public abstract java.lang.String edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.throwException(java.lang.String) throws edu.msu.ais.wstest.ServiceException,java.rmi.RemoteException
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Converting param: class java.lang.String
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Setting param class from TypeQName: class edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_throwException_RequestStruct
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Actual type is not assignable from param class: [param=class edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_throwException_RequestStruct,actual=class java.lang.String]
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Setting param java type: class java.lang.String
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Possible match: public abstract java.lang.String edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.throwException(java.lang.String) throws edu.msu.ais.wstest.ServiceException,java.rmi.RemoteException
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Conversion still necessary
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Setting return type: class java.lang.String
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Enter: createFaultMetadata: class edu.msu.ais.wstest.ServiceException
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Setting Parameters: [name: {http://wstest.ais.msu.edu/types}ServiceException
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}ServiceException
      javaType: class edu.msu.ais.wstest.ServiceException
      inHeader: false
      outHeader: false
      ]
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Adding fault: name: ServiceException
      qname: {http://wstest.ais.msu.edu/types}ServiceException
      type: {http://wstest.ais.msu.edu/types}ServiceException
      Class: edu.msu.ais.wstest.ServiceException
      ParameterDesc[0]:
      name: {http://wstest.ais.msu.edu/types}ServiceException
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}ServiceException
      javaType: class edu.msu.ais.wstest.ServiceException
      inHeader: false
      outHeader: false


      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Setting operation method: public abstract java.lang.String edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.throwException(java.lang.String) throws edu.msu.ais.wstest.ServiceException,java.rmi.RemoteException
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Enter: syncOperationToClass org.apache.axis.description.OperationDesc
      name: concatenate
      returnQName: {http://wstest.ais.msu.edu/types}concatenateResponse
      returnType: {http://wstest.ais.msu.edu/types}concatenateResponse
      returnClass: null
      elementQName:{http://wstest.ais.msu.edu/interfaces}concatenate
      soapAction: null
      style: document
      use: literal
      numInParams: 1
      method:null
      ParameterDesc[0]:
      name: {http://wstest.ais.msu.edu/types}concatenate
      typeEntry: null
      mode: IN
      isReturn: false
      typeQName: {http://wstest.ais.msu.edu/types}concatenate
      javaType: null
      inHeader: false
      outHeader: false


      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Sync method: public abstract java.lang.String edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.concatenate(java.lang.String,java.lang.String,java.lang.String) throws java.rmi.RemoteException
      2004-11-11 11:41:22,953 DEBUG [org.apache.axis.description.ServiceDesc] Number of parameters don't match
      2004-11-11 11:41:22,953 FATAL [org.apache.axis.InternalException] Exception:
      java.lang.Exception: The OperationDesc for concatenate was not synchronized to a method of edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.
      at org.apache.axis.InternalException.(InternalException.java:106)
      at org.apache.axis.description.ServiceDesc.syncOperationToClass(ServiceDesc.java:869)
      at org.apache.axis.description.ServiceDesc.getSyncedOperationsForName(ServiceDesc.java:1216)
      at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospectionRecursive(ServiceDesc.java:1062)
      at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(ServiceDesc.java:983)
      at org.apache.axis.providers.java.JavaProvider.initServiceDesc(JavaProvider.java:730)
      at org.jboss.webservice.server.InvokerProvider.initServiceDesc(InvokerProvider.java:101)
      at org.jboss.webservice.server.InvokerProviderEJB.initServiceDesc(InvokerProviderEJB.java:50)
      at org.apache.axis.handlers.soap.SOAPService.getInitializedServiceDesc(SOAPService.java:388)
      at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:560)
      at org.apache.axis.deployment.wsdd.WSDDDeployment.getDeployedServices(WSDDDeployment.java:617)
      at org.apache.axis.configuration.FileProvider.getDeployedServices(FileProvider.java:356)
      at org.jboss.webservice.server.ServiceEndpointServlet.reportAvailableServices(ServiceEndpointServlet.java:184)
      at org.jboss.webservice.server.ServiceEndpointServlet.doGet(ServiceEndpointServlet.java:84)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:54)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:535)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
      at java.lang.Thread.run(Thread.java:534)
      2004-11-11 11:41:22,968 INFO [org.apache.axis.transport.http.AxisServlet] Exception:
      org.apache.axis.InternalException: java.lang.Exception: The OperationDesc for concatenate was not synchronized to a method of edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint.
      at org.apache.axis.description.ServiceDesc.syncOperationToClass(ServiceDesc.java:869)
      at org.apache.axis.description.ServiceDesc.getSyncedOperationsForName(ServiceDesc.java:1216)
      at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospectionRecursive(ServiceDesc.java:1062)
      at org.apache.axis.description.ServiceDesc.loadServiceDescByIntrospection(ServiceDesc.java:983)
      at org.apache.axis.providers.java.JavaProvider.initServiceDesc(JavaProvider.java:730)
      at org.jboss.webservice.server.InvokerProvider.initServiceDesc(InvokerProvider.java:101)
      at org.jboss.webservice.server.InvokerProviderEJB.initServiceDesc(InvokerProviderEJB.java:50)
      at org.apache.axis.handlers.soap.SOAPService.getInitializedServiceDesc(SOAPService.java:388)
      at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:560)
      at org.apache.axis.deployment.wsdd.WSDDDeployment.getDeployedServices(WSDDDeployment.java:617)
      at org.apache.axis.configuration.FileProvider.getDeployedServices(FileProvider.java:356)
      at org.jboss.webservice.server.ServiceEndpointServlet.reportAvailableServices(ServiceEndpointServlet.java:184)
      at org.jboss.webservice.server.ServiceEndpointServlet.doGet(ServiceEndpointServlet.java:84)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:697)
      at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:54)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:535)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
      at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
      at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
      at java.lang.Thread.run(Thread.java:534)

      =============================================
      The WSDL is:

      <?xml version="1.0" encoding="UTF-8"?>

      <definitions name="TestService" targetNamespace="http://wstest.ais.msu.edu/interfaces" xmlns:tns="http://wstest.ais.msu.edu/interfaces" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns2="http://wstest.ais.msu.edu/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">

      <schema targetNamespace="http://wstest.ais.msu.edu/types" xmlns:tns="http://wstest.ais.msu.edu/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://www.w3.org/2001/XMLSchema">














































































































      <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:operation soapAction=""/>

      <soap:body use="literal"/>

      <soap:body use="literal"/>

      <soap:fault name="ServiceException" use="literal"/>


      <soap:address location="REPLACE_WITH_ACTUAL_URL"/>

      =============================================
      The webservices.xml has:

      <?xml version="1.0" encoding="UTF-8"?>

      <webservices xmlns="http://java.sun.com/xml/ns/j2ee"
      xmlns:impl="http://interfaces.ejb.wstest.ais.msu.edu"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1.xsd"
      version="1.1">

      <webservice-description>
      <webservice-description-name>TestService</webservice-description-name>
      <wsdl-file>META-INF/wsdl/TestService.wsdl</wsdl-file>
      <jaxrpc-mapping-file>META-INF/jaxrpc-mapping.xml</jaxrpc-mapping-file>

      <port-component>
      <port-component-name>TestService</port-component-name>
      <wsdl-port>TestServiceEndpointPort</wsdl-port>
      <service-endpoint-interface>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint</service-endpoint-interface>
      <service-impl-bean>
      <ejb-link>/wstest/TestService</ejb-link>
      </service-impl-bean>
      </port-component>
      </webservice-description>


      ===========================================
      The jaxrpc-mapping.xml has:

      <?xml version="1.0" encoding="UTF-8"?>
      <java-wsdl-mapping version="1.1" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd">
      <package-mapping>
      <package-type>edu.msu.ais.wstest.ejb.interfaces</package-type>
      http://wstest.ais.msu.edu/types
      </package-mapping>
      <package-mapping>
      <package-type>edu.msu.ais.wstest.ejb.interfaces</package-type>
      http://wstest.ais.msu.edu/interfaces
      </package-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.Bean</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:Bean</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>field1</java-variable-name>
      <xml-element-name>field1</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>field2</java-variable-name>
      <xml-element-name>field2</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>field3</java-variable-name>
      <xml-element-name>field3</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>field4</java-variable-name>
      <xml-element-name>field4</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_makeBean_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:makeBean</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>String_1</java-variable-name>
      <xml-element-name>String_1</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_makeBean_ResponseStruct1</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:makeBean2Response</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_concatenate_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:concatenate</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>String_1</java-variable-name>
      <xml-element-name>String_1</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>String_2</java-variable-name>
      <xml-element-name>String_2</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>String_3</java-variable-name>
      <xml-element-name>String_3</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_throwException_ResponseStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:throwExceptionResponse</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ServiceException</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:ServiceException</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>message</java-variable-name>
      <xml-element-name>message</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_makeBean_ResponseStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:makeBeanResponse</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_concatenate_ResponseStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:concatenateResponse</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_throwException_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:throwException</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>String_1</java-variable-name>
      <xml-element-name>String_1</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_echoBean_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:echoBean</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>Bean_1</java-variable-name>
      <xml-element-name>Bean_1</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_echoBean_ResponseStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:echoBeanResponse</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_echoString_ResponseStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:echoStringResponse</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>result</java-variable-name>
      <xml-element-name>result</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_makeBean2_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:makeBean2</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>String_1</java-variable-name>
      <xml-element-name>String_1</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>String_2</java-variable-name>
      <xml-element-name>String_2</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>String_3</java-variable-name>
      <xml-element-name>String_3</xml-element-name>
      </variable-mapping>
      <variable-mapping>
      <java-variable-name>String_4</java-variable-name>
      <xml-element-name>String_4</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <java-xml-type-mapping>
      <java-type>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint_echoString_RequestStruct</java-type>
      <root-type-qname xmlns:typeNS="http://wstest.ais.msu.edu/types">typeNS:echoString</root-type-qname>
      <qname-scope>complexType</qname-scope>
      <variable-mapping>
      <java-variable-name>String_1</java-variable-name>
      <xml-element-name>String_1</xml-element-name>
      </variable-mapping>
      </java-xml-type-mapping>
      <exception-mapping>
      <exception-type>edu.msu.ais.wstest.ServiceException</exception-type>
      <wsdl-message xmlns:exMsgNS="http://wstest.ais.msu.edu/interfaces">exMsgNS:ServiceException</wsdl-message>
      <constructor-parameter-order>
      <element-name>message</element-name>
      </constructor-parameter-order>
      </exception-mapping>
      <service-interface-mapping>
      <service-interface>edu.msu.ais.wstest.ejb.interfaces.TestService</service-interface>
      <wsdl-service-name xmlns:serviceNS="http://wstest.ais.msu.edu/interfaces">serviceNS:TestService</wsdl-service-name>
      <port-mapping>
      <port-name>TestServiceEndpointPort</port-name>
      <java-port-name>TestServiceEndpointPort</java-port-name>
      </port-mapping>
      </service-interface-mapping>
      <service-endpoint-interface-mapping>
      <service-endpoint-interface>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint</service-endpoint-interface>
      <wsdl-port-type xmlns:portTypeNS="http://wstest.ais.msu.edu/interfaces">portTypeNS:TestServiceEndpoint</wsdl-port-type>
      <wsdl-binding xmlns:bindingNS="http://wstest.ais.msu.edu/interfaces">bindingNS:TestServiceEndpointBinding</wsdl-binding>
      <service-endpoint-method-mapping>
      <java-method-name>concatenate</java-method-name>
      <wsdl-operation>concatenate</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_concatenate</wsdl-message>
      <wsdl-message-part-name>String_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_concatenate</wsdl-message>
      <wsdl-message-part-name>String_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_concatenate</wsdl-message>
      <wsdl-message-part-name>String_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>java.lang.String</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_concatenateResponse</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>echoBean</java-method-name>
      <wsdl-operation>echoBean</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>edu.msu.ais.wstest.Bean</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_echoBean</wsdl-message>
      <wsdl-message-part-name>Bean_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>edu.msu.ais.wstest.Bean</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_echoBeanResponse</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>echoString</java-method-name>
      <wsdl-operation>echoString</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_echoString</wsdl-message>
      <wsdl-message-part-name>String_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>java.lang.String</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_echoStringResponse</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>makeBean</java-method-name>
      <wsdl-operation>makeBean</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean</wsdl-message>
      <wsdl-message-part-name>String_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>edu.msu.ais.wstest.Bean</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBeanResponse</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>makeBean</java-method-name>
      <wsdl-operation>makeBean2</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean2</wsdl-message>
      <wsdl-message-part-name>String_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>1</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean2</wsdl-message>
      <wsdl-message-part-name>String_2</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>2</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean2</wsdl-message>
      <wsdl-message-part-name>String_3</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <method-param-parts-mapping>
      <param-position>3</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean2</wsdl-message>
      <wsdl-message-part-name>String_4</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>edu.msu.ais.wstest.Bean</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_makeBean2Response</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      <service-endpoint-method-mapping>
      <java-method-name>throwException</java-method-name>
      <wsdl-operation>throwException</wsdl-operation>
      <wrapped-element/>
      <method-param-parts-mapping>
      <param-position>0</param-position>
      <param-type>java.lang.String</param-type>
      <wsdl-message-mapping>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_throwException</wsdl-message>
      <wsdl-message-part-name>String_1</wsdl-message-part-name>
      <parameter-mode>IN</parameter-mode>
      </wsdl-message-mapping>
      </method-param-parts-mapping>
      <wsdl-return-value-mapping>
      <method-return-value>java.lang.String</method-return-value>
      <wsdl-message xmlns:wsdlMsgNS="http://wstest.ais.msu.edu/interfaces">wsdlMsgNS:TestServiceEndpoint_throwExceptionResponse</wsdl-message>
      <wsdl-message-part-name>result</wsdl-message-part-name>
      </wsdl-return-value-mapping>
      </service-endpoint-method-mapping>
      </service-endpoint-interface-mapping>
      </java-wsdl-mapping>

      ===========================================
      The ejb-jar.xml has:

      <?xml version="1.0" encoding="UTF-8"?>

      <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1">

      [CDATA[TEST]]
      <display-name>Generated by XDoclet</display-name>

      <enterprise-beans>

      <!-- Session Beans -->

      [CDATA[Web Service Stateless Session Bean implementation class.]]
      <display-name>MSU AIS Web Services Test Stateless Session Bean</display-name>

      <ejb-name>/wstest/TestService</ejb-name>

      <service-endpoint>edu.msu.ais.wstest.ejb.interfaces.TestServiceEndpoint</service-endpoint>
      <ejb-class>edu.msu.ais.wstest.ejb.TestServiceEJB</ejb-class>
      <session-type>Stateless</session-type>
      <transaction-type>Container</transaction-type>



      <!--
      To add session beans that you have deployment descriptor info for, add
      a file to your XDoclet merge directory called session-beans.xml that contains
      the markup for those beans.
      -->

      <!-- Entity Beans -->
      <!--
      To add entity beans that you have deployment descriptor info for, add
      a file to your XDoclet merge directory called entity-beans.xml that contains
      the markup for those beans.
      -->

      <!-- Message Driven Beans -->
      <!--
      To add message driven beans that you have deployment descriptor info for, add
      a file to your XDoclet merge directory called message-driven-beans.xml that contains
      the <message-driven></message-driven> markup for those beans.
      -->

      </enterprise-beans>

      <!-- Relationships -->

      <!-- Assembly Descriptor -->
      <!--
      To specify your own assembly descriptor info here, add a file to your
      XDoclet merge directory called assembly-descriptor.xml that contains
      the <assembly-descriptor></assembly-descriptor> markup.
      -->

      <assembly-descriptor >
      <!--
      To specify additional security-role elements, add a file in the merge
      directory called ejb-security-roles.xml that contains them.
      -->

      <!-- method permissions -->
      <!--
      To specify additional method-permission elements, add a file in the merge
      directory called ejb-method-permissions.ent that contains them.
      -->

      <!-- finder permissions -->

      <!-- transactions -->
      <!--
      To specify additional container-transaction elements, add a file in the merge
      directory called ejb-container-transaction.ent that contains them.
      -->
      <container-transaction >

      <ejb-name>/wstest/TestService</ejb-name>
      <method-name>*</method-name>

      <trans-attribute>Required</trans-attribute>
      </container-transaction>

      <!-- finder transactions -->

      <!--
      To specify an exclude-list element, add a file in the merge directory
      called ejb-exclude-list.xml that contains it.
      -->
      </assembly-descriptor>

      </ejb-jar>