I ran full-source on a new dist to see how it's defined, I remembered incorrectly, the getAll() method returns a list with generics but they're parameterized, is this the problem?:
List<T> getAll(); public List<T> getAll() { return genericDao.getAll(); } Where "T" is a type variable... I'm curious as to what had to be done to get xfire/xmlbeans to properly map this as maybe I can do the same thing with CXF/Aegis, does anybody know the details? I didn't see anything in xfire-servlet.xml that seems to be related but I could be wrong. --jack jackalista wrote: > > Hi, > > I was wondering if anybody here might know what's going with an exception > I've got embedding mule ESB in an appfuse app. First, mule itself uses > CXF, and I made a version of appfuse work with CXF but this problem exists > with both that and an unmodified appfuse that still uses XFire so I > suspect that's irrelevant. It's the miule CXF code that's blowing up on > it, using both JAXB and Aegis databinding. Aegis looks better for > handling Collections and things along those lines so I'll show that > exception: > > > Caused by: org.apache.cxf.aegis.DatabindingException: Error initializing > parameters for operation > {http://service.integration.jackalista.org/}getAll: Cannot create mapping > for java.util.List, unspecified component type for method getAll parameter > -1 > > Based on the following from this CXF article under the heading > "Collections": > > http://cwiki.apache.org/CXF20DOC/aegis-21.html > > which says: > --------------------------------------------------------- > "If you use a 'raw' collection type, Aegis will map it as a collection of > xsd:any particles. If you want the WSDL to show it as a collection of some > specific type, the easiest thing to do is to use Java generics instead of > raw types. If, for some reason, you can't do that, you can use the > componentType and keyType attributes of a property to specify the Java > classes." > --------------------------------------------------------- > > > The getAll() method which is part of appfuse core does return an untyped > (no generics) java.util.List, doesn't it? I'd have thought that Aegis > would have mapped it as a collection of xsd:any as it says above but it's > blowing up with that exception complaining about the component type of the > List which looks kind of like what's in that article. > > I'm trying to set up code first dev with mule as is done with appfuse web > services but am not sure what to do to fix this exception. Does anyone > know why xfire / xmlbeans in appfuse proper has no problem with this but > Aegis is throwing up? Do I need to add further annotations or different > ones? I'd like to get CXF under mule working the same basic way as xfire > does under the standard appfuse dist but am not finding too many clear > answers in what docs I've seen from the mule and CXF sites. > > Does anyone know the details about our xfire implementation regarding wsdl > / XSD generation and mapping? And / or can anybody recommend a very > comprehensive CXF book / manual / tutorial / etc. that might shed some > light on this? I'd really like to get an appfuse mule starter app up but > this needs to be resolved. If you're interested in the nitty gritty it > looks like the latest mule (2.2.2) includes CXF 2.1.5 which it uses for > things like databinding and web services support. I'm also open to input > about how to set this up and will share the source, I'm trying to get a > decent code first set up analogous to what exists now with xfire but am > also interested in a wsdl first set up, feel free to speak up if you have > opinions about how that might best be done and I might just do it for you. > > --j > -- View this message in context: http://www.nabble.com/databinding-problem-with-List-from-getAll%28%29-integrating-mule-2.2.2-and-appfuse-2.02-tp25778321s2369p25778956.html Sent from the AppFuse - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@appfuse.dev.java.net For additional commands, e-mail: users-h...@appfuse.dev.java.net