Sergey, Thanks for the reply. We are using jax-rs for all of our new services, but haven't had the opportunity to migrate a set of what we refer to as "legacy" services, which are currently in use with a lot of users. In fact, the reason we upgraded to 2.2.7 from 2.2.3 was to pick up a fix for posting multi-part form data to a jax-rs service.
As I mentioned, changing the array to an untyped Collection is working out for us for the time being. Typing the collection, e.g. Collection<WSCheckPoint>, yields the same result as if it were an array. -Todd Sergey Beryozkin-5 wrote: > > Sounds like an unfortunate regression, not really sure what the cause is. > Personally, I have not been involved in any CXF HTTP Binding work so I > don't > know what the problem is. As I've indicated a number of times, it has been > deprecated; it does not 'justify' the regression you're seeing :-), but > please be aware that no effort goes into additional testing/maintaining > HttpBinding, though Dan may've fixed some issues recently. Perhaps the > problem is not even originating from any HttpBinding changes, but from > changes to some other components it depends upon > > thanks, Sergey > > On Wed, Apr 21, 2010 at 11:04 PM, Todd McCullough > <[email protected] >> wrote: > >> >> Changing the WSCheckPoint[] to a Collection seems to solve the problem. >> Unfortunately, our services have evolved over time with CXF and changing >> the >> method params is quite a big change we weren't expecting to make. >> >> At least the problem has been narrowed down to arrays, hopefully this can >> help someone identify the root cause. >> >> -Todd >> >> >> Gabriel Guardincerri wrote: >> > >> > Hi, >> > >> > We are using REST http-binding, and we've just upgraded from 2.2.3 to >> > 2.2.7 and we have a new error when parsing the xml. >> > >> > We have this method/service >> > >> > @Post >> > @HttpResource(location = "/projects") >> > @WebMethod >> > WSProject create(@WebParam(name = "containerType") int >> containerType, >> > @WebParam(name = "containerID") long containerID, >> > @WebParam(name = "name") String name, >> > @WebParam(name = "description") String description, >> > @WebParam(name = "userID") long userID, >> > @WebParam(name = "checkPoints") WSCheckPoint[] checkpoints, >> > @WebParam(name = "startDate") Date startDate, >> > @WebParam(name = "dueDate") Date dueDate) >> > >> > >> > And this xml to do the post >> > >> > <create> >> > >> <containerType>${project.parentContainer.objectType?c}</containerType> >> > <containerID>${project.parentContainer.ID?c}</containerID> >> > <name>${project.name}</name> >> > <description>${project.description}</description> >> > <userID>${project.user.ID?c}</userID> >> > <checkPoints> >> > <CheckPoint> >> > <ID>${checkPoint.ID?c}</ID> >> > <description>${checkPoint.description}</description> >> > <name>${checkPoint.name}</name> >> > <dueDate>${checkPoint_dueDate}</dueDate> >> > <creationDate>${checkPoint_creationDate}</creationDate> >> > >> > <modificationDate>${checkPoint_modificationDate}</modificationDate> >> > </CheckPoint> >> > </checkPoints> >> > <startDate>${startDate}</startDate> >> > <dueDate>${dueDate}</dueDate> >> > </create> >> > >> > The problem is with the checkpoints, we get this error >> > >> > DefaultValidationEventHandler: [ERROR]: unexpected element (uri:"", >> > local:"CheckPoint"). Expected elements are >> > >> <{}creationDate>,<{}description>,<{}name>,<{}ID>,<{}uuid>,<{}modificationDate>,<{}objectType>,<{}dueDate>,<{}version> >> > Location: line 0 >> > >> > It seems that it's expecting something like >> > >> > <checkPoints> >> > <ID>${checkPoint.ID?c}</ID> >> > <description>${checkPoint.description}</description> >> > <name>${checkPoint.name}</name> >> > <dueDate>${checkPoint_dueDate}</dueDate> >> > <creationDate>${checkPoint_creationDate}</creationDate> >> > >> > <modificationDate>${checkPoint_modificationDate}</modificationDate> >> > </checkPoints> >> > >> > This worked with 2.2.3 but isn't working with 2.2.7. >> > >> > There are two problems with this. One is that the format of the xml has >> > changed and we need to keep backward compatibility. And the other one >> is >> > that without <CheckPoint> we won't be able to send several checkpoints. >> > >> > Any ideas of what is going on? >> > >> > Thanks in advance. >> > >> > Gabriel >> > >> >> -- >> View this message in context: >> http://old.nabble.com/XML-format-change-from-2.2.3-to-2.2.7-tp28287925p28312317.html >> Sent from the cxf-user mailing list archive at Nabble.com. >> >> > > -- View this message in context: http://old.nabble.com/XML-format-change-from-2.2.3-to-2.2.7-tp28287925p28330517.html Sent from the cxf-user mailing list archive at Nabble.com.
