[ https://issues.apache.org/jira/browse/AXIS2-1835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12471264 ]
Deepal Jayasinghe commented on AXIS2-1835: ------------------------------------------ can you please attache your client code. btw I have attach the code that I used to invoke the service RPCServiceClient client = new RPCServiceClient(); Options opts = new Options(); opts.setAction("urn:getContainer"); opts.setTo(new EndpointReference("http://localhost:8000/axis2/services/MyService")); client.setOptions(opts); client.invokeBlocking(new QName("http://ws.apache.org/axis2/xsd","getContainer"),new Object[]{null}); > return a java.lang.List return a java.lang.IllegalArgumentException: null rcl > ----------------------------------------------------------------------------- > > Key: AXIS2-1835 > URL: https://issues.apache.org/jira/browse/AXIS2-1835 > Project: Axis 2.0 (Axis2) > Issue Type: Bug > Components: databinding > Affects Versions: 1.1 > Environment: jdk 1.5 > Reporter: Benoit Decherf > Assigned To: Deepal Jayasinghe > Attachments: patchBeanUtil.patch, patchSimpleTypeMapper.patch > > > I want to create a service which return an object containing a List: > The object to return: > public class Container { > private List myList = new ArrayList(); > public List getList() { > return myList; > } > } > The service (pojo) : > public class MyService { > private Container container = new Container(); > public Container getContainer() { > container.getList().add("a test"); > return container; > } > } > When I try to access the service I receive an Exception: > Caused by: java.lang.IllegalArgumentException: null rcl > at > org.codehaus.jam.internal.reflect.ReflectClassBuilder.<init>(ReflectClassBuilder.java:47) > at > org.codehaus.jam.provider.JamServiceFactoryImpl.createBuilder(JamServiceFactoryImpl.java:173) > I checked the code, and I saw in the class > org/apache/axis2/databinding/utils/BeanUtil, The only object I can use to > send a list is the ArrayList. Why ? > I change the isArrayList method in > org/apache/axis2/databinding/typemapping/SimpleTypeMapper to detect a > java.util.List instead of just the ArrayList and it works fine. So why limit > to ArrayList (and not just Collection)? > I think there is an other bug which return the IllegalArgumentException in > org.codehaus.jam.internal.reflect.ReflectClassBuilder.java: > In the method getPullParser of the class BeanUtil, there is no check on what > returns beanObject.getClass().getClassLoader() before doing the > addClassLoader. > Some implementations may use null to represent the bootstrap class loader. > This method will return null in such implementations if this class was loaded > by the bootstrap class loader. So that explain why the error is "null rcl". > Thanks, > Benoit -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]