Hi Yugandhar,

The order of the messages in the portType is significant, so by reversing these you changed the operation from a request-response pattern to a solicit-response pattern. I haven't tested this pattern (since it tends to be rarely used), but suspect that with this change the JiBX data binding for the input message is just not getting processed.

The error you're getting in the first case says that you don't have a binding defined for the authenticationKeyType element. JiBX does require you to supply a binding with <mapping> definitions that match the actual message elements (for basic doc/lit) or the component types (for unwrapped). Do you have the <mapping> for authenticationKeyType defined?

 - Dennis

Dennis M. Sosnoski
SOA and Web Services in Java
Training and Consulting
http://www.sosnoski.com - http://www.sosnoski.co.nz
Seattle, WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117



yugandhar wrote:
Hello,

I am using axis2 1.1.1 and jibx 1.1.3.  I created a wsdl and trying to
generate the skeleton.

porttype I am using is:

<wsdl:portType name="SOASecurityServicePortType">
    <wsdl:operation name="authenticate">
      <wsdl:input message="ns:authenticateRequest"/>
      <wsdl:output message="ns:authenticateResponse"/>
    </wsdl:operation>
  </wsdl:portType>
========================
wsdl2java throws up the following error: ========================
Exception in thread "main"
org.apache.axis2.wsdl.codegen.CodeGenerationException:
java.lang.RuntimeException: No ma
pping defined for element
{http://SOASecurity.sec.gov/SOASecurity/wsdl/1.0/SOASecurity.wsdl}authenticationKeyType
        at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:224)
        at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32)
        at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21)
Caused by: java.lang.RuntimeException: No mapping defined for element
{http://SOASecurity.sec.gov/SOASecurity/wsdl/
1.0/SOASecurity.wsdl}authenticationKeyType
        at
org.apache.axis2.jibx.CodeGenerationUtility.mapQName(CodeGenerationUtility.java:928)
        at
org.apache.axis2.jibx.CodeGenerationUtility.mapMessage(CodeGenerationUtility.java:914)
        at
org.apache.axis2.jibx.CodeGenerationUtility.engage(CodeGenerationUtility.java:384)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at
org.apache.axis2.wsdl.codegen.extension.JiBXExtension.engage(JiBXExtension.java:74)
        at
org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:177)
        ... 2 more
===================================

But when I changed (basically swapped) the input message and output message
in the porttype it creates the files.

<wsdl:portType name="SOASecurityServicePortType">
    <wsdl:operation name="authenticate">
     <wsdl:output message="ns:authenticateResponse"/>
      <wsdl:input message="ns:authenticateRequest"/>
    </wsdl:operation>
  </wsdl:portType>

I am kind of puzzled and not sure how to go about this. Any help is greatly
appreciated. May be I am missing some feature here.

regards
Yugandhar


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to