[
https://issues.apache.org/activemq/browse/CAMEL-1254?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=48867#action_48867
]
Willem Jiang commented on CAMEL-1254:
-------------------------------------
I removed the code of setServiceClass(String), because this code will
never be called in my box.
<error type="java.lang.IllegalArgumentException"
message="java.lang.String is not an
interface">java.lang.IllegalArgumentException: java.lang.String is not
an interface
at java.lang.reflect.Proxy.getProxyClass(Proxy.java:362)
at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
at
org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:118)
at
org.apache.camel.component.cxf.CxfEndpoint.createClient(CxfEndpoint.java:240)
at
org.apache.camel.component.cxf.CxfProducer.<init>(CxfProducer.java:60)
at
org.apache.camel.component.cxf.CxfEndpoint.createProducer(CxfEndpoint.java:89)
Found this issue was caused by the IntrospectionSupport always return
setServiceClass(Object ) instead of setServiceClass(String) in windows box.
I just filled a JIRA CAMEL-1279 for it.
> camel-cxf: URI option for serviceClass does not support lookup in registry
> --------------------------------------------------------------------------
>
> Key: CAMEL-1254
> URL: https://issues.apache.org/activemq/browse/CAMEL-1254
> Project: Apache Camel
> Issue Type: Improvement
> Components: camel-cxf
> Affects Versions: 1.5.0
> Reporter: Claus Ibsen
> Assignee: William Tam
> Priority: Minor
>
> Having an endpoint such as:
> {code}
> String cxfEndpoint =
> "cxf://http://localhost:8080/part-five/webservices/incident"
> +
> "?serviceClass=org.apache.camel.example.reportincident.ReportIncidentEndpoint"
> + "&wsdlURL=report_incident.wsdl";
> {code}
> The serviceClass option currently only supports defining a FQN for the class.
> I think we need to support Registry lookup as well using the # notation. So
> you can do:
> {code}
> String cxfEndpoint =
> "cxf://http://localhost:8080/part-five/webservices/incident"
> + "?serviceClass=#reportService"
> + "&wsdlURL=report_incident.wsdl";
> {code}
> And then have it defined in Spring XML:
> {code}
> <bean id="reportService" class="...">
> {code}
> The # notation is already supported if you use the cxf Spring XML
> configuration. We need this in the Java DSL as well.
> Sorry if it already exists. But I got a hint from a Camel end user that it
> didn't
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.