You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2008/03/19 06:00:24 UTC
[jira] Resolved: (CXF-1476) Exception in INOUT parameter
[ https://issues.apache.org/jira/browse/CXF-1476?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp resolved CXF-1476.
------------------------------
Resolution: Fixed
Fix Version/s: 2.1
> Exception in INOUT parameter
> ----------------------------
>
> Key: CXF-1476
> URL: https://issues.apache.org/jira/browse/CXF-1476
> Project: CXF
> Issue Type: Bug
> Affects Versions: 2.0.4
> Reporter: Giancarlo Valeri
> Assignee: Daniel Kulp
> Fix For: 2.1
>
> Attachments: testcxf.zip
>
>
> I need to expose a service with CXF with an INOUT parameter. The INOUT parameter is two dimensial array of objects (of class NameAndValue_T).
> The interface exposed is:
> package foo;
> import javax.jws.WebParam;
> import javax.jws.WebParam.Mode;
> @javax.jws.WebService(name="ENDPOINT_NAME",
> targetNamespace="NAME_SPACE")@javax.jws.soap.SOAPBinding(use=javax.jws.soap.SOAPBinding.Use.LITERAL,
> parameterStyle=javax.jws.soap.SOAPBinding.ParameterStyle.WRAPPED)
> public abstract interface TestInterface {
> @javax.jws.WebMethod(operationName="bar")
> abstract public boolean bar(@WebParam(name="how_many") int how_many, @WebParam(name="nameList", mode=Mode.INOUT) javax.xml.ws.Holder<foo.NameAndValue_T[][]> nameList);
> }
> During the Service creation the following Exception is raised:
> INFO: Creating Service {NAME_SPACE}TestInterfaceService from class foo.TestInterface
> Exception in thread "main" java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.GenericArrayTypeImpl cannot be cast to java.lang.Class
> at org.apache.cxf.jaxws.support.JaxWsServiceConfiguration.getHolderClass(JaxWsServiceConfiguration.java:707)
> at org.apache.cxf.jaxws.support.JaxWsServiceConfiguration.getHolderType(JaxWsServiceConfiguration.java:697)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.getHolderType(ReflectionServiceFactoryBean.java:1423)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeParameter(ReflectionServiceFactoryBean.java:1325)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createMessageParts(ReflectionServiceFactoryBean.java:1156)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createOperation(ReflectionServiceFactoryBean.java:699)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.createInterface(ReflectionServiceFactoryBean.java:683)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:305)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:362)
> at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:156)
> at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:89)
> at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:74)
> at org.apache.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:108)
> at org.apache.cxf.jaxws.JaxWsServerFactoryBean.create(JaxWsServerFactoryBean.java:147)
> at foo.Server.<init>(Server.java:41)
> at foo.Server.main(Server.java:46)
>
> In attachement there is a project to reproduce the problem.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.