users@jax-rpc.java.net

problem with WSDL file, "jaxrpc compilation exception" in .ear deploy step

From: Merten Schumann <Merten.Schumann_at_asg.com>
Date: Mon, 12 Jul 2004 13:43:46 +0200

Hello,

this is some WSDL which defines two ports. What I want is both, an WS-I
compliant and an "old" port specification in my WSDL. I hope in this way
more SOAP client implementations will have a chance to use my web
service.

<?xml version="1.0" encoding="UTF-8"?>
<definitions name="WuergService" targetNamespace="urn:Foo"
xmlns:tns="urn:Foo" xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
   <types/>
   <message name="Wuerg_sayHello">
      <part name="String_1" type="xsd:string"/>
   </message>
   <message name="Wuerg_sayHelloResponse">
      <part name="result" type="xsd:string"/>
   </message>
   <portType name="Wuerg">
      <operation name="sayHello" parameterOrder="String_1">
         <input message="tns:Wuerg_sayHello"/>
         <output message="tns:Wuerg_sayHelloResponse"/>
      </operation>
   </portType>
   <binding name="WuergBinding" type="tns:Wuerg">
      <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="rpc"/>
      <operation name="sayHello">
         <soap:operation soapAction=""/>
         <input>
            <soap:body use="literal" namespace="urn:Foo"/>
         </input>
         <output>
            <soap:body use="literal" namespace="urn:Foo"/>
         </output>
      </operation>
   </binding>
   <!-- non WS-I compliant -->
   <binding name="WuergBinding2" type="tns:Wuerg">
      <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
style="rpc"/>
      <operation name="sayHello">
         <soap:operation soapAction=""/>
         <input>
            <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded"
namespace="urn:Foo"/>
         </input>
         <output>
            <soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded"
namespace="urn:Foo"/>
         </output>
      </operation>
   </binding>
   <service name="WuergService">
      <port name="WuergPort" binding="tns:WuergBinding">
         <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
      </port>
      <port name="WuergPort2" binding="tns:WuergBinding2">
         <soap:address location="REPLACE_WITH_ACTUAL_URL"/>
      </port>
   </service>
</definitions>

According to http://schemas.xmlsoap.org/wsdl/ the WSDL is valid.

But when I try to deploy it (the .ear) in Sun J2EE RI 1.4 (Sun App
Server 8.0), I do get this exception:

[#|2004-07-12T13:17:31.687+0200|SEVERE|sun-appserver-pe8.0|javax.enterpr
ise.system.tools.deployment|_ThreadID=44;|Exception occured in J2EEC
Phasecom.sun.enterprise.deployment.backend.IASDeploymentException: Error
while loading application [WuergServiceApp]. Please refer to the server
log for more details.
com.sun.enterprise.deployment.backend.IASDeploymentException: Fatal
Error from EJB Compiler -- jaxrpc compilation exception at
com.sun.enterprise.webservice.codegen.JaxRpcRICodegen.accept(JaxRpcRICod
egen.java:203)

What's wrong with my WSDL?
I created two source files for the "handwritten" WSDL with wscompile
(Ant task), one with features="wsi" and one without ...

Thank you!
   Merten

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net