Issue with EJB3 URI
-------------------

                 Key: TUSCANY-2604
                 URL: https://issues.apache.org/jira/browse/TUSCANY-2604
             Project: Tuscany
          Issue Type: Bug
          Components: Java SCA Core Runtime
    Affects Versions: Java-SCA-1.3
         Environment: WindosXP, Wepsphere 6.1
            Reporter: Anurodh


I have created a simple project where i am using EJB3 for persistance. Flow  is 
Web(UI) --> SCA --> EJB3. 
Here is my composite file:

<?xml version="1.0" encoding="UTF-8"?>
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"; 
name="SessionManagerServiceComposite" 
targetNamespace="http://com.edata.ejb.common";>
  <component name="SessionManagerServiceComponent">
    <implementation.java class="com.edata.ejb.common.SessionManager"/>
    <service name="ISessionManagerRemote">
      <interface.java interface="com.edata.ejb.common.ISessionManagerRemote"/>
      <binding.sca />
    </service>
    <reference name="prescriberServiceRemoteReference">
      <interface.java 
interface="com.edata.service.prescriber.IPrescriberServiceRemote"/>
      <binding.ejb 
uri="corbaname:iiop:localhost:9083/NameServiceServerRoot#ejb/PBMUIEJB_jar/PBMUIEJB.jar/PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote"/>
    </reference>
  </component>
</composite> 

but at run time i am getting following exception. same code runs fine on 
Websphere V7 SCA Service pack.  


[9/11/08 17:14:57:498 EDT] 0000002d ApplicationMg A   WSVR0221I: Application 
started: PBMUI
[9/11/08 17:15:17:739 EDT] 00000031 ValidatingXML E 
org.apache.tuscany.sca.contribution.processor.ValidatingXMLStreamReader  
XMLSchema validation error occured in: null ,line = 10, column = 7, Message = 
cvc-datatype-valid.1.2.1: 
'corbaname:iiop:localhost:9082/NameServiceServerRoot#ejb/PBMUI/PBMUIEJB.jar/PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote'
 is not a valid value for 'anyURI'.
[9/11/08 17:15:17:755 EDT] 00000031 ValidatingXML E 
org.apache.tuscany.sca.contribution.processor.ValidatingXMLStreamReader  
XMLSchema validation error occured in: null ,line = 10, column = 7, Message = 
cvc-attribute.3: The value 
'corbaname:iiop:localhost:9082/NameServiceServerRoot#ejb/PBMUI/PBMUIEJB.jar/PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote'
 of attribute 'uri' on element 'binding.ejb' is not valid with respect to its 
type, 'anyURI'.
[9/11/08 17:15:18:456 EDT] 00000031 PBMUIEJBPU    E   Exception in action: 
getSearchData
                                 org.osoa.sca.ServiceRuntimeException: 
org.osoa.sca.ServiceUnavailableException: javax.naming.InvalidNameException: 
The name component 
"PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote" 
violates INS name syntax.  There is more than one unescaped ID/KIND separator 
(".").
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBHandler.<init>(EJBHandler.java:76)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBHandler.<init>(EJBHandler.java:66)
        at 
org.apache.tuscany.sca.binding.ejb.provider.EJBBindingInvoker.doInvoke(EJBBindingInvoker.java:73)
        at 
org.apache.tuscany.sca.binding.ejb.provider.EJBBindingInvoker.invoke(EJBBindingInvoker.java:50)
        at 
org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:107)
        at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:287)
        at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154)
        at $Proxy105.getAllPrescribers(Unknown Source)
        at 
com.edata.ejb.common.SessionManager.executeService(SessionManager.java:40)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:618)
        at 
org.apache.tuscany.sca.implementation.java.invocation.JavaImplementationInvoker.invoke(JavaImplementationInvoker.java:132)
        at 
org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:112)
        at 
org.apache.tuscany.sca.binding.sca.impl.SCABindingInvoker.invoke(SCABindingInvoker.java:61)
        at 
org.apache.tuscany.sca.core.databinding.wire.PassByValueInterceptor.invoke(PassByValueInterceptor.java:112)
        at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:287)
        at 
org.apache.tuscany.sca.core.invocation.JDKInvocationHandler.invoke(JDKInvocationHandler.java:154)
        at $Proxy104.executeService(Unknown Source)
        at 
com.edata.web.delegate.PrescriberDelegate.getAllPrescribers(PrescriberDelegate.java:135)
        at 
com.edata.struts.actions.PrescriberAction.getSearchView(PrescriberAction.java:191)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:618)
        at 
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
        at 
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
        at 
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
        at 
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
        at 
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
        at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:990)
        at 
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:502)
        at 
com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:473)
        at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3276)
        at 
com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267)
        at 
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811)
        at 
com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455)
        at 
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:113)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:383)
        at 
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:263)
        at 
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
        at 
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
        at 
com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
        at 
com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
        at 
com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
        at 
com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
Caused by: org.osoa.sca.ServiceUnavailableException: 
javax.naming.InvalidNameException: The name component 
"PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote" 
violates INS name syntax.  There is more than one unescaped ID/KIND separator 
(".").
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBStubHelper.getStub(EJBStubHelper.java:51)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBStubHelper.lookup(EJBStubHelper.java:44)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBHandler.<init>(EJBHandler.java:73)
        ... 54 more
Caused by: javax.naming.InvalidNameException: The name component 
"PrescriberService#com.edata.service.prescriber.IPrescriberServiceRemote" 
violates INS name syntax.  There is more than one unescaped ID/KIND separator 
(".").
        at 
com.ibm.ws.naming.util.WsnName.parseJndiNameComponentString(WsnName.java:1110)
        at com.ibm.ws.naming.util.WsnName.setName(WsnName.java:941)
        at com.ibm.ws.naming.util.WsnName.<init>(WsnName.java:181)
        at 
com.ibm.ws.naming.corbaname.corbanameURLContext.convertINSNameToCurrentSyntax(corbanameURLContext.java:77)
        at 
com.ibm.ws.naming.corbaname.corbanameURLContext.getProviderURLAndName(corbanameURLContext.java:155)
        at 
com.ibm.ws.naming.util.CorbaURLContext.setupForLookup(CorbaURLContext.java:101)
        at 
com.ibm.ws.naming.util.CorbaURLContext.lookup(CorbaURLContext.java:417)
        at javax.naming.InitialContext.lookup(InitialContext.java:363)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBLocator$JndiLocator.locate(EJBLocator.java:461)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBLocator.locate(EJBLocator.java:429)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBObjectFactory.createStub(EJBObjectFactory.java:65)
        at 
org.apache.tuscany.sca.binding.ejb.util.EJBStubHelper.getStub(EJBStubHelper.java:49)
        ... 56 more


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to