I gather that your original WSDL is using RPC/encoded.

Axis2 does not support SOAP encoding, and it is more rigorous about
SOAP and WSDL conformance than Axis. According to the specifications,
faults MUST be defined using document/literal; therefore, the fault
message parts MUST reference elements rather than types.

Try this:

In the bindings, change all use="encoded" attributes to use="literal".

In your types section, add an element definition for each fault
message and define its type as the type used in the part definition,
e.g., for this fault:

  <wsdl:message name="OurCustomException">
     <wsdl:part name="fault" type="impl:OurCustomException"/>
  </wsdl:message>

define the following element:

  <xsd:element name="OurCustomException" type="impl:OurCustomException"/>

And modify the fault message definition like so:

  <wsdl:message name="OurCustomException">
     <wsdl:part name="fault" element="impl:OurCustomException"/>
  </wsdl:message>

Anne

On Tue, Apr 1, 2008 at 10:21 AM, Thomas Burdairon
<[EMAIL PROTECTED]> wrote:
> Thank you for your advices, I'm trying to generate java classes from my old
> wsdl files,
>  and while java files are generated almost without problems (need to remove
> some use="encoded" so the operation is OK),
>  I cannot manage to generate java files from WSDL with operations declared
> with faults.
>
>  ex :
>
>  <wsdl:message name="OurCustomException">
>     <wsdl:part name="fault" type="impl:OurCustomException"/>
>   </wsdl:message>
>
>  -> we get Part 'fault' of fault message '{urn:our.package.SoapGeography}
> OurCustomException' must be defined with 'element=QName' and not
> 'type=QName'
>
>  -> change to element="impl:OurCustomException"
>
>  But at this time we get some
>  Exception in thread "main"
> org.apache.axis2.wsdl.codegen.CodeGenerationException:
> org.apache.axis2.wsdl.codegen.CodeGenerationException:
> org.apache.axis2.wsdl.databinding.UnmatchedTypeException: No type was mapped
> to the name OurCustomException with namespace urn:our.package.SoapGeography
>
>  that prevent java classes to be generated, and I cant see what's wrong.
>
>  the command line used is :
>  .build/axis2-1.3/bin/wsdl2java.sh -d xmlbeans -uri
> ~/Desktop/wsdls/Geography.wsdl -ss -g -sd -o output -p our.package
>
>
>  Another question while here :
>  In Axis 1.4, we were using the class
> org.apache.axis.handlers.SimpleSessionHandler to manage the session.
>  On 1st works, i used a soapsession for my services and so my messages now
> contain some WS Addressing parts.
>  The problem is that our clients are written in flash actionscript, and
> webservice is very limited on this platform, and the addressing namespace
> does not seem to be declared.
>
>  Is there any simplier solution?
>  Has anybody ever used Flash with axis2 and a session management ?
>
>
>  Thanks for your time !
>  Tom
>
>
>
>  On 29 mars 08, at 14:14, Anne Thomas Manes wrote:
>
> > If you want to keep the WSDL the same, then I suggest you use the
> > WSDL-first approach rather than the POJO approach. Take the WSDL from
> > your Axis 1.4 service and use WSDL2Java to generate a new service
> > skeleton.
> >
> > Anne
> >
> > On Fri, Mar 28, 2008 at 5:47 AM, Thomas Burdairon
> > <[EMAIL PROTECTED]> wrote:
> >
> > > Greatings
> > >  I'm working on a migration from Axis1.4 to Axis2 1.3.
> > >  We choosed to use the POJO approach since it seems to be the easiest
> > >  one. That means I don't generate my WSDL, they are autogenerated by
> > >  axis.
> > >  I am currently encountering 2 major problems.
> > >  - Beans presents in WSDL
> > >  Some of our services return different objects depending of the
> > >  parameters. To do so, we have a simple inheritance schema that look
> > >  like :
> > >  interface A
> > >  object B implements Aobject C implement A...
> > >  All the methods in the service return A, so by default the generated
> > >  WSDL only contains the definition of A.
> > >  In Axis1, there an extraClasses parameter in the WSDL that we were
> > >  using to declare objects B and C.I couldn't find an equivalent in
> > >  Axis2 (in the service.xml).I've read http://issues.apache.org/jira/
> > >  browse/AXIS2-1056, but it seem to fix only java2wsdl and this isn't
> > >  what I am looking for.Is there any way for it?or, in your opinion,
> > >  would a patch be easy to write?
> > >
> > >
> > >  - Beans description in WSDL for List :Some of the javabeans sent or
> > >  received by our webservices contains List
> > >  One nice feature in axis1 was that java.util.List were converted in
> > >  the WSDL as type="impl:ArrayOf_xsd_anyType"Now, it looks like
> > >  type="xs:anyType"
> > >  i tried to convert some of them ito arrays, just to see and i get
> > >  maxOccurs="unbounded" minOccurs="0" seems weird since it is not
> > >  explicitly said it is an array, but why not ...
> > >  problem is i used to use List<Number> as type and it's strangely
> > >  deserialized.is Number type supported by Axis2?is there an official
> > >  list of supported java types ?
> > >
> > >  thanks for your time and your answers
> > >
> > >  ---------------------------------------------------------------------
> > >  To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >  For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: [EMAIL PROTECTED]
>  For additional commands, e-mail: [EMAIL PROTECTED]
>
>

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

Reply via email to