hi all,  i have 2 composites.  the first composite exposes a service 
(binding.ws) and the second composite references the first service.  works 
fine.  they are both using spring/hibernate underneath and i'm able to perform 
some operations reading the db.  
i added security the the first composite.  using soapUI, i try to invoke the 
service and i get a security exception.  it's the same exception i get when 
trying to invoke the helloworld-ws-service-secure service.  so, that end seems 
to be working fine.  
on the second composite, here's my definitions.xml file:
<?xml version="1.0" encoding="ASCII"?><sca:definitions 
xmlns="http://www.osoa.org/xmlns/sca/1.0"targetNamespace="http://www.osoa.org/xmlns/sca/1.0"xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"xmlns:soasecurity="http://org.soa.services";><!--
 WS Security POLICY SETS --><sca:policySet 
name="soasecurity:wsClientAuthenticationPolicy"provides="authentication"appliesTo="sca:reference/sca:binding.ws"><tuscany:wsConfigParam><parameter
 
name="OutflowSecurity"><action><items>UsernameToken</items><user>TuscanyWsUser</user><passwordCallbackClass>org.soa.services.security.ClientPWCBHandler</passwordCallbackClass>"
 
+<passwordType>PasswordText</passwordType></action></parameter></tuscany:wsConfigParam></sca:policySet><!--
 Policysets for unit tests that use the testHelloworldws.composite -->declare 
these policy sets and with the 'provides' set to the intents that the 
composite in the helloworld-ws-service uses. --><!-- Since we use the 
helloworld-ws-service for the unit testing we need to <sca:policySet 
name="soasecurity:wsAuthenticationPolicy"provides="authentication"appliesTo="sca:service/sca:binding.ws"><tuscany:wsConfigParam><parameter
 
name="InflowSecurity"><action><items>UsernameToken</items><passwordCallbackClass>org.soa.services.security.ServerPWCBHandler</passwordCallbackClass></action></parameter></tuscany:wsConfigParam></sca:policySet>When
 i try to invoke the service, using a test runner in eclipse, i'm getting a 
strange error (see below).  i took a look at the helloworld-ws-reference-secure 
example and that's where i got my definitions.xml.  just took out the calls for 
'integrity'.  I also noticed there's a PolicyHolder file in META-INF/services, 
but I'm not sure what that is for ??  maybe it's related to my problem, but not 
sure.  neither the ClientPWCBHandler nor the ServerPWCPHandler are
 invoked.  
In the second composite, I added the requires="authentication" to the reference 
element as well.  here's the error (seems misleading since it's working fine 
without security):1. Injected addressServiceClient -> $Proxy7
AddressServiceImpl -> Called getAddressException in thread "main" 
at org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(
at 
org.apache.tuscany.sca.databinding.DefaultDataBindingExtensionPoint$LazyDataBinding.copy(
at org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copy(
at 
org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.copyFault(
at org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(
at org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(
at org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(
at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(
at org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(
at $Proxy7.getAddress(Unknown Source)
at helloworld.DCRIOrganizationServiceCompositeRunner.main(
Caused by: 
at java.io.ObjectOutputStream.writeObject0(
at java.io.ObjectOutputStream.defaultWriteFields(
at java.io.ObjectOutputStream.writeSerialData(
at java.io.ObjectOutputStream.writeOrdinaryObject(
at java.io.ObjectOutputStream.writeObject0(
at java.io.ObjectOutputStream.defaultWriteFields(
at java.io.ObjectOutputStream.defaultWriteObject(
at java.lang.Throwable.writeObject(
at sun.reflect.NativeMethodAccessorImpl.invoke0(
at sun.reflect.NativeMethodAccessorImpl.invoke(
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
at java.lang.reflect.Method.invoke(
at java.io.ObjectStreamClass.invokeWriteObject(
at java.io.ObjectOutputStream.writeSerialData(
at java.io.ObjectOutputStream.writeOrdinaryObject(
at java.io.ObjectOutputStream.writeObject0(
at java.io.ObjectOutputStream.defaultWriteFields(
at java.io.ObjectOutputStream.defaultWriteObject(
at java.lang.Throwable.writeObject(
at sun.reflect.NativeMethodAccessorImpl.invoke0(
at sun.reflect.NativeMethodAccessorImpl.invoke(
at sun.reflect.DelegatingMethodAccessorImpl.invoke(
at java.lang.reflect.Method.invoke(
at java.io.ObjectStreamClass.invokeWriteObject(
at java.io.ObjectOutputStream.writeSerialData(
at java.io.ObjectOutputStream.writeOrdinaryObject(
at java.io.ObjectOutputStream.writeObject0(
at java.io.ObjectOutputStream.writeObject(
at org.apache.tuscany.sca.databinding.javabeans.JavaBeansDataBinding.copy(
... 10 more
thx abejava.lang.IllegalArgumentException: Pass-by-value is not supported for 
the given 
objectJavaBeansDataBinding.java:102)DefaultDataBindingExtensionPoint.java:171)PassByValueInterceptor.java:235)PassByValueInterceptor.java:130)PassByValueInterceptor.java:115)SCABindingInvoker.java:61)PassByValueInterceptor.java:108)JDKInvocationHandler.java:286)JDKInvocationHandler.java:154)DCRIOrganizationServiceCompositeRunner.java:44)java.io.NotSerializableException:
 
org.apache.axiom.om.impl.llom.OMElementImplObjectOutputStream.java:1081)ObjectOutputStream.java:1375)ObjectOutputStream.java:1347)ObjectOutputStream.java:1290)ObjectOutputStream.java:1079)ObjectOutputStream.java:1375)ObjectOutputStream.java:391)Throwable.java:649)Native
 
Method)NativeMethodAccessorImpl.java:39)DelegatingMethodAccessorImpl.java:25)Method.java:585)ObjectStreamClass.java:917)ObjectOutputStream.java:1339)ObjectOutputStream.java:1290)ObjectOutputStream.java:1079)ObjectOutputStream.java:1375)ObjectOutputStream.java:391)Throwable.java:649)Native
 
Method)NativeMethodAccessorImpl.java:39)DelegatingMethodAccessorImpl.java:25)Method.java:585)ObjectStreamClass.java:917)ObjectOutputStream.java:1339)ObjectOutputStream.java:1290)ObjectOutputStream.java:1079)ObjectOutputStream.java:302)JavaBeansDataBinding.java:71)</sca:definitions>


      

Reply via email to