On Tuesday 23 October 2007, Piotr PiBis Berlowski wrote:
> That was a VERY good question.
> I did create them the first way. Second way proved to fix the problem.

OK.  Then I'll probably have a fix in today.   

> Of course there's another related issue. I would like to create the
> exceptions without additional parameters but if I specify "partless"
> exception in my wsdl I hit against wsdl2java bug - exceptions that get
> created do not override the "new Exception(message)" constructor... I
> haven't investigated that yet so I don't know if someone already
> pointed that out.

Well, that's not valid.   The WSDL spec MANDATES that the fault points to 
a message with a single part.   It's actually very important.   That 
element that that part points to is the ONLY information on the wire to 
distinguish one exception from another.   If that is not there, or if 
two fault messages point to the same element, there will no way to 
reconstitute the proper exceptions on the client side.

Dan


> Neverthless, you helped me greatly. Thank you.
>
> > Quick question...
> >
> > On the server side, where you create the fault, are you doing:
> >
> > throw new
> > IncorrectProjectIdsException("IncorrectProjectIdsException...");
> >
> > or:
> > throw new
> > IncorrectProjectIdsException("IncorrectProjectIdsException...",
> > "Detail string");
> >
> > I think there is an issue if the detail is null.   I'm looking into
> > that now.
> >
> > Dan
> >
> > On Tuesday 23 October 2007, Piotr PiBis Berlowski wrote:
> >> Hi, and thank you for your interest.
> >>
> >> Regretfully, 2.0.3 does not work either. However, the problem
> >> appears to be just a top of an iceberg. To be specific - we are
> >> naver able to tell if an exception is gonna work or not. We have
> >> not found any rule in that yet. Only rule is that when a wsdl is
> >> big, and has lots of operations and lots of exceptions, some of
> >> them will not work for sure.
> >>
> >> I attach the full wsdl, which causes the problem.
> >>
> >> There is no apparent difference between neither wsdl nor the
> >> generated classes for the exceptions that do work and that don't
> >> work. We are currently working on catching the soap messages and
> >> checking if the problem occurs on the client or on the server side.
> >>
> >> Best regards,
> >> Piotr Berlowski
> >>
> >>> Any chance you could try the latest 2.0.3 SNAPSHOT?
> >>>
> >>> I just tried with trunk and this worked fine.
> >>>
> >>> Server code:
> >>>     public void removeXtmProjects(java.util.List<java.lang.String>
> >>> projectIds) throws IncorrectProjectIdsException    {
> >>>         throw new IncorrectProjectIdsException("Exception on
> >>> server", projectIds.get(0));
> >>>     }
> >>>
> >>> Client code:
> >>>         java.util.List<java.lang.String>
> >>> _removeXtmProjects_projectIds = new ArrayList<String>();
> >>>         _removeXtmProjects_projectIds.add("hello");
> >>>         try {
> >>>             port.removeXtmProjects(_removeXtmProjects_projectIds);
> >>>
> >>>         } catch (IncorrectProjectIdsException e) {
> >>>             System.out.println("Expected exception:
> >>> IncorrectProjectIdsException has occurred.");
> >>>             System.out.println(e.toString());
> >>>             System.out.println(e.getFaultInfo());
> >>>         }
> >>>
> >>>
> >>> What got printed out:
> >>> Expected exception: IncorrectProjectIdsException has occurred.
> >>> com.xmlintl.webservice.integration.IncorrectProjectIdsException:
> >>> Exception on server
> >>> hello
> >>>
> >>>
> >>> Thus, it looks like it's fixed.
> >>>
> >>> Dan
> >>>
> >>> On Monday 22 October 2007, Piotr PiBis Berlowski wrote:
> >>>> Hi,
> >>>>
> >>>>  We consider this issue to be a huge blocker for a major project.
> >>>> When a user-defined exception is thrown by the server, a client
> >>>> receives a SOAPExceptionFault (with the message that belonged to
> >>>> the user-defined exception). CXF version is 2.0.2. You can find
> >>>> generated exception class, exception details class and relevant
> >>>> parts od wsdl attached to this message.
> >>>>
> >>>> If any more information is required, I will be more than happy to
> >>>> post it. We are really stuck with this!
> >>>>
> >>>> Thanks in advance, and best regards!



-- 
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727    C: 508-380-7194
[EMAIL PROTECTED]
http://www.dankulp.com/blog

Reply via email to