[jira] [Commented] (ARIES-1054) Running aries subsystem 1.0.0 on felix 4.2.1 failed

2013-12-12 Thread John Ross (JIRA)

[ 
https://issues.apache.org/jira/browse/ARIES-1054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13846296#comment-13846296
 ] 

John Ross commented on ARIES-1054:
--

 I can't get the Eclipse coordinator running on Felix, this import is missing: 
 org.eclipse.osgi.util

Specifically, the package dependency is 
org.eclipse.osgi.util;version=[1.1,2.0). At least one bundle providing this 
package is the org.eclipse.equinox.supplement bundle. See ARIES-1053.

 Running aries subsystem 1.0.0 on felix 4.2.1 failed
 ---

 Key: ARIES-1054
 URL: https://issues.apache.org/jira/browse/ARIES-1054
 Project: Aries
  Issue Type: Bug
  Components: Subsystem
Affects Versions: 1.0
 Environment: 1 felix 4.2.1
 2 glassfish v4
Reporter: TangYong
Priority: Critical

 [Running aries subsystem 1.0.0 on felix 4.2.1 failed]
 putting the following bundle into felix/bundle
 org.apache.aries.subsystem.api_1.0.0
 org.apache.aries.subsystem.core_1.0.0
 org.apache.aries.subsystem.obr_1.0.0
 org.apache.aries.application.api_1.0.0
 org.apache.aries.application.modeller_1.0.0
 org.apache.aries.application.utils_1.0.0
 org.apache.aries.blueprint_1.1.0
 org.apache.aries.proxy_1.0.1
 org.apache.aries.util_1.1.0
 org.apache.felix.bundlerepository_1.6.6
 org.apache.felix.resolver_1.0.0
 org.eclipse.equinox.coordinator_1.1.0.v20120522-1841
 org.eclipse.equinox.region_1.1.0.v20120522-1841
 slf4j.api_1.5.11
 slf4j.simple_1.5.11
 org.apache.felix.configadmin-1.6.0.jar
 Then, staring felix and the following exception happend,
 578 [FelixStartLevel] INFO 
 org.apache.aries.blueprint.container.BlueprintExtender - No quiesce support 
 is available, so blueprint comp
 
 Welcome to Apache Felix Gogo
 g! 1765 [Blueprint Extender: 1] ERROR 
 org.apache.aries.subsystem.core.internal.Utils - Resource could not be 
 installed
 org.osgi.service.coordinator.CoordinationException: Coordination has failed
 at 
 org.eclipse.equinox.coordinator.CoordinationImpl.checkTerminated(CoordinationImpl.java:393)
 at 
 org.eclipse.equinox.coordinator.CoordinationImpl.terminate(CoordinationImpl.java:401)
 at 
 org.eclipse.equinox.coordinator.CoordinationImpl.end(CoordinationImpl.java:152)
 at 
 org.eclipse.equinox.coordinator.CoordinationReferent.end(CoordinationReferent.java:38)
 at 
 org.apache.aries.subsystem.core.internal.Utils.installResource(Utils.java:81)
 at 
 org.apache.aries.subsystem.core.internal.RegionContextBundleHelper.installRegionContextBundle(RegionContextBundleHelper.jav
 at 
 org.apache.aries.subsystem.core.internal.SubsystemResourceInstaller.installRegionContextBundle(SubsystemResourceInstaller.j
 at 
 org.apache.aries.subsystem.core.internal.SubsystemResourceInstaller.installAriesSubsystem(SubsystemResourceInstaller.java:9
 at 
 org.apache.aries.subsystem.core.internal.SubsystemResourceInstaller.install(SubsystemResourceInstaller.java:40)
 at 
 org.apache.aries.subsystem.core.internal.Subsystems.getRootSubsystem(Subsystems.java:131)
 at 
 org.apache.aries.subsystem.core.internal.Activator.activate(Activator.java:164)
 at 
 org.apache.aries.subsystem.core.internal.Activator.addingService(Activator.java:264)
 at 
 org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
 at 
 org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:864)
 at 
 org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
 at 
 org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
 at 
 org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894)
 at 
 org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
 at 
 org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
 at 
 org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
 at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4419)
 at org.apache.felix.framework.Felix.registerService(Felix.java:3423)
 at 
 org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:346)
 at 
 org.apache.aries.blueprint.container.BlueprintContainerImpl.registerService(BlueprintContainerImpl.java:439)
 at 
 org.apache.aries.blueprint.container.ServiceRecipe.register(ServiceRecipe.java:190)
 at 
 org.apache.aries.blueprint.container.BlueprintContainerImpl.registerServices(BlueprintContainerImpl.java:690)
 at 
 org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:369)
 at 
 

[jira] [Created] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Andrei Shakirin (JIRA)
Andrei Shakirin created ARIES-1140:
--

 Summary: Injected java.lang.reflect.Proxy implements only single 
interface
 Key: ARIES-1140
 URL: https://issues.apache.org/jira/browse/ARIES-1140
 Project: Aries
  Issue Type: Improvement
  Components: Proxy
Affects Versions: proxy-impl-1.0.1
Reporter: Andrei Shakirin


Hi,

I have a problem in using Blueprint together with CXF and Karaf projects. The 
use case is quite trivial: I inject OSGi service into java class source. This 
OSGi service is exposed by declared jax-ws client.

1. Blueprint configuration exporting service:
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xmlns:cxf=http://cxf.apache.org/blueprint/core;
xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws 
http://cxf.apache.org/schemas/blueprint/jaxws.xsd
http://cxf.apache.org/blueprint/core 
http://cxf.apache.org/schemas/blueprint/core.xsd

jaxws:client id=crmClient
xmlns:serviceNamespace=http://services.talend.org/CRMService;
serviceClass=org.talend.services.crmservice.CRMService
serviceName=serviceNamespace:CRMServiceProvider
endpointName=serviceNamespace:CRMServicePort
address=http://localhost:8080/service/CRMService/

 service ref=crmClient 
interface=org.talend.services.crmservice.CRMService /
/blueprint

Where org.talend.services.crmservice.CRMService is generated jax-ws interface

2. Blueprint configuration importing service:
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
reference id=CRMServiceClient 
interface=org.talend.services.crmservice.CRMService /

bean id=TestClass
class=org.talend..demo.TestClass
property name=crms ref=CRMServiceClient /
/bean
/blueprint

3. Code in TestClass:
...
private CRMService crms;

public void setCrms(CRMService crms) {
this.crms = crms;
System.out.println(crms.getClass());
System.out.println(crms.toString());
System.out.println(crms instanceof BindingProvider);
}
...
Problem:
The problem is that crms proxy, injected into TestClass, implements only 
org.talend.services.crmservice.CRMService.
The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
the following output from setCrms:

class com.sun.proxy.$Proxy151
org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
false

The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
of BindingProvider interface. The problem is that this proxy is not jax-ws 
compatible, because spec requires that all proxies implementing BindingProvider 
interface.

Interesting that Spring DM proxy hasn't such problem: it implements 
BindingProvider interface in this scenario.

Is it Blueprint problem? (seems to be true for me)
Is there way to fix this in Blueprint?

Regards,
Andrei.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)


Re: [jira] [Created] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Daniel Kulp

On Dec 12, 2013, at 10:30 AM, Andrei Shakirin (JIRA) j...@apache.org wrote:

 Andrei Shakirin created ARIES-1140:
 --
 
 Summary: Injected java.lang.reflect.Proxy implements only single 
 interface
 Key: ARIES-1140
 URL: https://issues.apache.org/jira/browse/ARIES-1140
 Project: Aries
  Issue Type: Improvement
  Components: Proxy
Affects Versions: proxy-impl-1.0.1
Reporter: Andrei Shakirin
 
 
 Hi,
 
 I have a problem in using Blueprint together with CXF and Karaf projects. The 
 use case is quite trivial: I inject OSGi service into java class source. This 
 OSGi service is exposed by declared jax-ws client.
 
 1. Blueprint configuration exporting service:
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
 xmlns:cxf=http://cxf.apache.org/blueprint/core;
xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws 
 http://cxf.apache.org/schemas/blueprint/jaxws.xsd
http://cxf.apache.org/blueprint/core 
 http://cxf.apache.org/schemas/blueprint/core.xsd

jaxws:client id=crmClient
xmlns:serviceNamespace=http://services.talend.org/CRMService;
serviceClass=org.talend.services.crmservice.CRMService
serviceName=serviceNamespace:CRMServiceProvider
endpointName=serviceNamespace:CRMServicePort
address=http://localhost:8080/service/CRMService/
 
 service ref=crmClient 
 interface=org.talend.services.crmservice.CRMService /
 /blueprint
 
 Where org.talend.services.crmservice.CRMService is generated jax-ws interface
 
 2. Blueprint configuration importing service:
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
   reference id=CRMServiceClient 
 interface=org.talend.services.crmservice.CRMService /
 
   bean id=TestClass
   class=org.talend..demo.TestClass
   property name=crms ref=CRMServiceClient /
   /bean
 /blueprint
 
 3. Code in TestClass:
 ...
private CRMService crms;
 
public void setCrms(CRMService crms) {
this.crms = crms;
System.out.println(crms.getClass());
System.out.println(crms.toString());
System.out.println(crms instanceof BindingProvider);
}
 ...
 Problem:
 The problem is that crms proxy, injected into TestClass, implements only 
 org.talend.services.crmservice.CRMService.
 The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
 implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
 also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
 the following output from setCrms:
 
 class com.sun.proxy.$Proxy151
 org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
 false
 
 The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
 of BindingProvider interface. The problem is that this proxy is not jax-ws 
 compatible, because spec requires that all proxies implementing 
 BindingProvider interface.
 
 Interesting that Spring DM proxy hasn't such problem: it implements 
 BindingProvider interface in this scenario.
 
 Is it Blueprint problem? (seems to be true for me)
 Is there way to fix this in Blueprint?
 
 Regards,
 Andrei.
 
 
 
 --
 This message was sent by Atlassian JIRA
 (v6.1.4#6159)

-- 
Daniel Kulp
dk...@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com



[jira] [Commented] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Richard Ellis (JIRA)

[ 
https://issues.apache.org/jira/browse/ARIES-1140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13846504#comment-13846504
 ] 

Richard Ellis commented on ARIES-1140:
--

Does the generated interface org.talend.services.crmservice.CRMService extend 
javax.xml.ws.BindingProvider?
Section 121.7.11 of the Blueprint spec says that a service reference proxy must 
only support the methods of the given interface i.e. in this case the 
org.talend.services.crmservice.CRMService interface.

 Injected java.lang.reflect.Proxy implements only single interface
 -

 Key: ARIES-1140
 URL: https://issues.apache.org/jira/browse/ARIES-1140
 Project: Aries
  Issue Type: Improvement
  Components: Proxy
Affects Versions: proxy-impl-1.0.1
Reporter: Andrei Shakirin

 Hi,
 I have a problem in using Blueprint together with CXF and Karaf projects. The 
 use case is quite trivial: I inject OSGi service into java class source. This 
 OSGi service is exposed by declared jax-ws client.
 1. Blueprint configuration exporting service:
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
 xmlns:cxf=http://cxf.apache.org/blueprint/core;
 xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
 http://cxf.apache.org/blueprint/jaxws 
 http://cxf.apache.org/schemas/blueprint/jaxws.xsd
 http://cxf.apache.org/blueprint/core 
 http://cxf.apache.org/schemas/blueprint/core.xsd
 
 jaxws:client id=crmClient
 xmlns:serviceNamespace=http://services.talend.org/CRMService;
 serviceClass=org.talend.services.crmservice.CRMService
 serviceName=serviceNamespace:CRMServiceProvider
 endpointName=serviceNamespace:CRMServicePort
 address=http://localhost:8080/service/CRMService/
  service ref=crmClient 
 interface=org.talend.services.crmservice.CRMService /
 /blueprint
 Where org.talend.services.crmservice.CRMService is generated jax-ws interface
 2. Blueprint configuration importing service:
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
   reference id=CRMServiceClient 
 interface=org.talend.services.crmservice.CRMService /
   bean id=TestClass
   class=org.talend..demo.TestClass
   property name=crms ref=CRMServiceClient /
   /bean
 /blueprint
 3. Code in TestClass:
 ...
 private CRMService crms;
 public void setCrms(CRMService crms) {
 this.crms = crms;
 System.out.println(crms.getClass());
 System.out.println(crms.toString());
 System.out.println(crms instanceof BindingProvider);
 }
 ...
 Problem:
 The problem is that crms proxy, injected into TestClass, implements only 
 org.talend.services.crmservice.CRMService.
 The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
 implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
 also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
 the following output from setCrms:
 class com.sun.proxy.$Proxy151
 org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
 false
 The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
 of BindingProvider interface. The problem is that this proxy is not jax-ws 
 compatible, because spec requires that all proxies implementing 
 BindingProvider interface.
 Interesting that Spring DM proxy hasn't such problem: it implements 
 BindingProvider interface in this scenario.
 Is it Blueprint problem? (seems to be true for me)
 Is there way to fix this in Blueprint?
 Regards,
 Andrei.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)


[jira] [Updated] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Daniel Kulp (JIRA)

 [ 
https://issues.apache.org/jira/browse/ARIES-1140?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Daniel Kulp updated ARIES-1140:
---

Description: 
Hi,

I have a problem in using Blueprint together with CXF and Karaf projects. The 
use case is quite trivial: I inject OSGi service into java class source. This 
OSGi service is exposed by declared jax-ws client.

1. Blueprint configuration exporting service:
{code:xml}
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xmlns:cxf=http://cxf.apache.org/blueprint/core;
xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws 
http://cxf.apache.org/schemas/blueprint/jaxws.xsd
http://cxf.apache.org/blueprint/core 
http://cxf.apache.org/schemas/blueprint/core.xsd

jaxws:client id=crmClient
xmlns:serviceNamespace=http://services.talend.org/CRMService;
serviceClass=org.talend.services.crmservice.CRMService
serviceName=serviceNamespace:CRMServiceProvider
endpointName=serviceNamespace:CRMServicePort
address=http://localhost:8080/service/CRMService/

 service ref=crmClient 
interface=org.talend.services.crmservice.CRMService /
/blueprint
{code}
Where org.talend.services.crmservice.CRMService is generated jax-ws interface

2. Blueprint configuration importing service:
{code:xml}
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
reference id=CRMServiceClient 
interface=org.talend.services.crmservice.CRMService /

bean id=TestClass
class=org.talend..demo.TestClass
property name=crms ref=CRMServiceClient /
/bean
/blueprint
{code}
3. Code in TestClass:

{code:java}
...
private CRMService crms;

public void setCrms(CRMService crms) {
this.crms = crms;
System.out.println(crms.getClass());
System.out.println(crms.toString());
System.out.println(crms instanceof BindingProvider);
}
...
{code}
Problem:
The problem is that crms proxy, injected into TestClass, implements only 
org.talend.services.crmservice.CRMService.
The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
the following output from setCrms:

class com.sun.proxy.$Proxy151
org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
false

The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
of BindingProvider interface. The problem is that this proxy is not jax-ws 
compatible, because spec requires that all proxies implementing BindingProvider 
interface.

Interesting that Spring DM proxy hasn't such problem: it implements 
BindingProvider interface in this scenario.

Is it Blueprint problem? (seems to be true for me)
Is there way to fix this in Blueprint?

Regards,
Andrei.

  was:
Hi,

I have a problem in using Blueprint together with CXF and Karaf projects. The 
use case is quite trivial: I inject OSGi service into java class source. This 
OSGi service is exposed by declared jax-ws client.

1. Blueprint configuration exporting service:
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xmlns:cxf=http://cxf.apache.org/blueprint/core;
xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://cxf.apache.org/blueprint/jaxws 
http://cxf.apache.org/schemas/blueprint/jaxws.xsd
http://cxf.apache.org/blueprint/core 
http://cxf.apache.org/schemas/blueprint/core.xsd

jaxws:client id=crmClient
xmlns:serviceNamespace=http://services.talend.org/CRMService;
serviceClass=org.talend.services.crmservice.CRMService
serviceName=serviceNamespace:CRMServiceProvider
endpointName=serviceNamespace:CRMServicePort
address=http://localhost:8080/service/CRMService/

 service ref=crmClient 
interface=org.talend.services.crmservice.CRMService /
/blueprint

Where org.talend.services.crmservice.CRMService is generated jax-ws interface

2. Blueprint configuration importing service:
blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 

[jira] [Commented] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Daniel Kulp (JIRA)

[ 
https://issues.apache.org/jira/browse/ARIES-1140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13846509#comment-13846509
 ] 

Daniel Kulp commented on ARIES-1140:



I *think* the only thing you could do would be to register a second service 
reference:

service ref=crmClientBindingProvider 
interface=javax.xml.ws.BindingProvider /

and inject that in as well.   That would likely be a bit fragile as you could 
have many BindingProvider services.   You'd probably want to stick a property 
on there to identify the other service it's associated with.

 Injected java.lang.reflect.Proxy implements only single interface
 -

 Key: ARIES-1140
 URL: https://issues.apache.org/jira/browse/ARIES-1140
 Project: Aries
  Issue Type: Improvement
  Components: Proxy
Affects Versions: proxy-impl-1.0.1
Reporter: Andrei Shakirin

 Hi,
 I have a problem in using Blueprint together with CXF and Karaf projects. The 
 use case is quite trivial: I inject OSGi service into java class source. This 
 OSGi service is exposed by declared jax-ws client.
 1. Blueprint configuration exporting service:
 {code:xml}
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
 xmlns:cxf=http://cxf.apache.org/blueprint/core;
 xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
 http://cxf.apache.org/blueprint/jaxws 
 http://cxf.apache.org/schemas/blueprint/jaxws.xsd
 http://cxf.apache.org/blueprint/core 
 http://cxf.apache.org/schemas/blueprint/core.xsd
 
 jaxws:client id=crmClient
 xmlns:serviceNamespace=http://services.talend.org/CRMService;
 serviceClass=org.talend.services.crmservice.CRMService
 serviceName=serviceNamespace:CRMServiceProvider
 endpointName=serviceNamespace:CRMServicePort
 address=http://localhost:8080/service/CRMService/
  service ref=crmClient 
 interface=org.talend.services.crmservice.CRMService /
 /blueprint
 {code}
 Where org.talend.services.crmservice.CRMService is generated jax-ws interface
 2. Blueprint configuration importing service:
 {code:xml}
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
   reference id=CRMServiceClient 
 interface=org.talend.services.crmservice.CRMService /
   bean id=TestClass
   class=org.talend..demo.TestClass
   property name=crms ref=CRMServiceClient /
   /bean
 /blueprint
 {code}
 3. Code in TestClass:
 {code:java}
 ...
 private CRMService crms;
 public void setCrms(CRMService crms) {
 this.crms = crms;
 System.out.println(crms.getClass());
 System.out.println(crms.toString());
 System.out.println(crms instanceof BindingProvider);
 }
 ...
 {code}
 Problem:
 The problem is that crms proxy, injected into TestClass, implements only 
 org.talend.services.crmservice.CRMService.
 The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
 implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
 also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
 the following output from setCrms:
 class com.sun.proxy.$Proxy151
 org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
 false
 The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
 of BindingProvider interface. The problem is that this proxy is not jax-ws 
 compatible, because spec requires that all proxies implementing 
 BindingProvider interface.
 Interesting that Spring DM proxy hasn't such problem: it implements 
 BindingProvider interface in this scenario.
 Is it Blueprint problem? (seems to be true for me)
 Is there way to fix this in Blueprint?
 Regards,
 Andrei.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)


[jira] [Commented] (ARIES-1140) Injected java.lang.reflect.Proxy implements only single interface

2013-12-12 Thread Christian Schneider (JIRA)

[ 
https://issues.apache.org/jira/browse/ARIES-1140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13847224#comment-13847224
 ] 

Christian Schneider commented on ARIES-1140:


Can we let the blueprint proxy implement all interfaces it finds by reflection? 
Or at least all interfaces the services is published with?

 Injected java.lang.reflect.Proxy implements only single interface
 -

 Key: ARIES-1140
 URL: https://issues.apache.org/jira/browse/ARIES-1140
 Project: Aries
  Issue Type: Improvement
  Components: Proxy
Affects Versions: proxy-impl-1.0.1
Reporter: Andrei Shakirin

 Hi,
 I have a problem in using Blueprint together with CXF and Karaf projects. The 
 use case is quite trivial: I inject OSGi service into java class source. This 
 OSGi service is exposed by declared jax-ws client.
 1. Blueprint configuration exporting service:
 {code:xml}
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
 xmlns:cxf=http://cxf.apache.org/blueprint/core;
 xmlns:jaxws=http://cxf.apache.org/blueprint/jaxws;
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
 http://cxf.apache.org/blueprint/jaxws 
 http://cxf.apache.org/schemas/blueprint/jaxws.xsd
 http://cxf.apache.org/blueprint/core 
 http://cxf.apache.org/schemas/blueprint/core.xsd
 
 jaxws:client id=crmClient
 xmlns:serviceNamespace=http://services.talend.org/CRMService;
 serviceClass=org.talend.services.crmservice.CRMService
 serviceName=serviceNamespace:CRMServiceProvider
 endpointName=serviceNamespace:CRMServicePort
 address=http://localhost:8080/service/CRMService/
  service ref=crmClient 
 interface=org.talend.services.crmservice.CRMService /
 /blueprint
 {code}
 Where org.talend.services.crmservice.CRMService is generated jax-ws interface
 2. Blueprint configuration importing service:
 {code:xml}
 blueprint xmlns=http://www.osgi.org/xmlns/blueprint/v1.0.0;
   xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;   
 xsi:schemaLocation=http://www.osgi.org/xmlns/blueprint/v1.0.0 
 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd;
   reference id=CRMServiceClient 
 interface=org.talend.services.crmservice.CRMService /
   bean id=TestClass
   class=org.talend..demo.TestClass
   property name=crms ref=CRMServiceClient /
   /bean
 /blueprint
 {code}
 3. Code in TestClass:
 {code:java}
 ...
 private CRMService crms;
 public void setCrms(CRMService crms) {
 this.crms = crms;
 System.out.println(crms.getClass());
 System.out.println(crms.toString());
 System.out.println(crms instanceof BindingProvider);
 }
 ...
 {code}
 Problem:
 The problem is that crms proxy, injected into TestClass, implements only 
 org.talend.services.crmservice.CRMService.
 The proxy calls methods of org.apache.cxf.jaxws.JaxWsClientProxy which 
 implements javax.xml.ws.BindingProvider interface. I expect that crms proxy 
 also implements javax.xml.ws.BindingProvider, but it is not the case. I have 
 the following output from setCrms:
 class com.sun.proxy.$Proxy151
 org.apache.cxf.jaxws.JaxWsClientProxy@c3f8b42
 false
 The proxy calls toString() method of JaxWsClientProxy, but it is not instance 
 of BindingProvider interface. The problem is that this proxy is not jax-ws 
 compatible, because spec requires that all proxies implementing 
 BindingProvider interface.
 Interesting that Spring DM proxy hasn't such problem: it implements 
 BindingProvider interface in this scenario.
 Is it Blueprint problem? (seems to be true for me)
 Is there way to fix this in Blueprint?
 Regards,
 Andrei.



--
This message was sent by Atlassian JIRA
(v6.1.4#6159)