That was the problem. The service is now registering correctly. Thanks you very much for your help. FYI, I didn't write the BPEL by hand. It was autogenerated by another product. That's why I had such complicated imports (File url imports and http url imports), separate wsdl files for partner link definitions and so many namespace definitions. It took a lot of time to reduce all these to a more manageable quantity but still I didn't get it right. I'm not sure how that can be simplified but if ODE were to support in the future file and http urls it could help.
-----Original Message----- From: Alex Boisvert [mailto:[EMAIL PROTECTED] Sent: Friday, June 08, 2007 2:05 PM To: [email protected] Subject: Re: ContextException: Unable to access WSDL definition I just noticed another issue with your BPEL imports: <bpel:import importType="http://schemas.xmlsoap.org/wsdl/" location="LoanApprover.wsdl" namespace="http://loanApproval.thierry<http://loanapproval.thierry/> "/> The namespace doesn't match what you have in your deploy.xml: xmlns:ws="http://loanApproval.thierry/webServices<http://loanapproval.th ierry/webServices> " I doubt the issue is resolving the WSDL document itself... I think it's mostly about matching the names between all the documents. When I write BPEL by hand, I do spend a fair amount of my time fixing those! :) alex On 6/8/07, Ciot, Thierry <[EMAIL PROTECTED]> wrote: > > I removed the namespace prefixes on your partnerLinkName's and port > names and I'm still getting the same error: > > 11:44:12,881 DEBUG [BpelProcess] Activating > {http://thierry.loanApproval}LoanApprovallProcess-13 > ERROR - GeronimoLog.error(108) | Deployment of LoanApprovallProcess > failed, aborting for now. > org.apache.ode.bpel.iapi.ContextException: Unable to access WSDL > definition to activate MyRole endpoint for service > {http://loanApproval.thierry/webServices}LoanRequestService and port > LoanRequestPort > at > org.apache.ode.axis2.BindingContextImpl.activateMyRoleEndpoint(BindingCo > ntextImpl.java:55) > at > org.apache.ode.bpel.engine.BpelProcess.activate(BpelProcess.java:413) > > How is ODE's deployer finding the corresponding wsdl file? > > Thanks. > > -----Original Message----- > From: Alex Boisvert [mailto:[EMAIL PROTECTED] > Sent: Friday, June 08, 2007 11:01 AM > To: [email protected] > Subject: Re: ContextException: Unable to access WSDL definition > > Hi Thierry, > > You should remove the namespace prefixes on your partnerLinkName's and > port > names. Neither of those are qualified names. > > e.g. pns:LoanApprovallProcess -> LoanApprovallProcess > and lrns:LoanRequestPort -> LoanRequestPort > > > > > alex > > On 6/8/07, Ciot, Thierry <[EMAIL PROTECTED]> wrote: > > > > I'm receiving the following error when deploying to Tomcat: > > "org.apache.ode.bpel.iapi.ContextException: Unable to access WSDL > > definition to activate MyRole endpoint for service > > {http://loanApproval.thierry/webServices}LoanRequestService and port > > lrns:LoanRequestPort" > > > > > > > > I have fixed all the issues I had yesterday with <bpel:import> and > > <wsdl:import>. Now all wsdl files are in the same directory as the > bpel > > file and I use relative filename (as in the HelloWorld2 example). The > > BPEL file compiles without any error message. The import relationship > > is now working. > > > > > > > > I'm assuming the problem is in the deploy.xml (since bpel file > compiles > > ok) but I can't find out why. > > > > How is ODE supposed to find the corresponding wsdl file? > > > > > > > > Below is the complete stack trace, the deploy.xml and the relevant > part > > from the bpel file. > > > > > > > > Thanks, Thierry. > > > > > > > > > > > > Deploy.xml: > > > > -------------- > > > > <deploy xmlns:pns="http://thierry.loanApproval" > > > > xmlns="http://www.apache.org/ode/schemas/dd/2007/03" > > > > xmlns:lans="http://loanApproval.thierry" > > > > xmlns:lrns="http://loanRequest.thierry" > > > > xmlns:ws="http://loanApproval.thierry/webServices"> > > > > > > > > <process name="pns:LoanApprovallProcess"> > > > > <provide partnerLink="pns:LoanRequestPartnerLinkName"> > > > > <service name="ws:LoanRequestService" > > port="lrns:LoanRequestPort"/> > > > > </provide> > > > > > > > > <invoke partnerLink="pns:LoanAssessorPartnerLinkName"> > > > > <service name="ws:LoanAssessorService" > > port="lns:LoanAssessorServiceSoap"/> > > > > </invoke> > > > > > > > > <invoke partnerLink="pns:LoanApproverPartnerLinkName"> > > > > <service name="ws:LoanApproverService" > > port="lans:LoanApproverSOAP12port_http"/> > > > > </invoke> > > > > </process> > > > > </deploy> > > > > > > > > Bpel fragment: > > > > > > > > <bpel:process > > > > > xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable" > > > > xmlns:ns="http://loanApproval.thierry/xsd" > > > > xmlns:ns1="http://loanApproval.thierry" > > > > xmlns:ns2="http://loanApprover.thierry" > > > > xmlns:ns3="http://loanRequestPartnerLinkType.thierry" > > > > xmlns:ns4="http://loanRequest.thierry" > > > > xmlns:ns5="http://loanApprover.thierry/PartnerLinkType" > > > > xmlns:ns6="http://loanAssessor.thierry/" > > > > xmlns:ns7="http://loanAssessor.thierry/PartnerLinkType" > > > > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > > > > targetNamespace="http://thierry.loanApproval" > > > > name="LoanApprovallProcess" suppressJoinFailure="yes"> > > > > > > > > <bpel:import importType="http://schemas.xmlsoap.org/wsdl/" > > location="LoanApprover.wsdl" namespace="http://loanApproval.thierry"/> > > > > <bpel:import importType="http://schemas.xmlsoap.org/wsdl/" > > location="LoanRequest.wsdl" namespace="http://loanRequest.thierry"/> > > > > <bpel:import importType="http://schemas.xmlsoap.org/wsdl/" > > location="LoanAssessor.wsdl" > namespace="http://loanAssessor.thierry/"/> > > > > > > > > <bpel:partnerLinks> > > > > <bpel:partnerLink myRole="CustomerRole" > > name="LoanRequestPartnerLinkName" > > partnerLinkType="ns4:LoanRequestPartnerLinkType"/> > > > > <bpel:partnerLink name="LoanApproverPartnerLinkName" > > partnerLinkType="ns1:LoanApproverPartnerLinkType" > > partnerRole="LoanApproverRole"/> > > > > <bpel:partnerLink name="LoanAssessorPartnerLinkName" > > partnerLinkType="ns6:LoanAssessorPartnerLinkType" > > partnerRole="LoanAssessorRole"/> > > > > </bpel:partnerLinks> > > > > > > > > Complete stack trace from Tomcat log: > > > > ----------------------------------------------- > > > > Deployment of LoanApprovallProcess failed, aborting for now. > > > > org.apache.ode.bpel.iapi.ContextException: Unable to access WSDL > > definition to activate MyRole endpoint for service > > {http://loanApproval.thierry/webServices}LoanRequestService and port > > lrns:LoanRequestPort > > > > at > > > org.apache.ode.axis2.BindingContextImpl.activateMyRoleEndpoint(BindingCo > > ntextImpl.java:55) > > > > at > > org.apache.ode.bpel.engine.BpelProcess.activate(BpelProcess.java:413) > > > > at > > > org.apache.ode.bpel.engine.BpelEngineImpl.registerProcess(BpelEngineImpl > > .java:214) > > > > at > > > org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:2 > > 53) > > > > at > > org.apache.ode.axis2.ODEServer.handleEvent(ODEServer.java:508) > > > > at > > org.apache.ode.axis2.ODEServer.access$100(ODEServer.java:67) > > > > at > > > org.apache.ode.axis2.ODEServer$ProcessStoreListenerImpl.onProcessStoreEv > > ent(ODEServer.java:494) > > > > at > > > org.apache.ode.store.ProcessStoreImpl.fireEvent(ProcessStoreImpl.java:49 > > 4) > > > > at > > > org.apache.ode.store.ProcessStoreImpl.fireStateChange(ProcessStoreImpl.j > > ava:500) > > > > at > > > org.apache.ode.store.ProcessStoreImpl.deploy(ProcessStoreImpl.java:283) > > > > at > > > org.apache.ode.axis2.deploy.DeploymentPoller.check(DeploymentPoller.java > > :144) > > > > at > > > org.apache.ode.axis2.deploy.DeploymentPoller.access$300(DeploymentPoller > > .java:55) > > > > at > > > org.apache.ode.axis2.deploy.DeploymentPoller$PollingThread.run(Deploymen > > tPoller.java:188) > > > > > > The contents of this e-mail are intended for the named addressee only. > It > > contains information that may be confidential. Unless you are the > named > > addressee or an authorized designee, you may not copy or use it, or > disclose > > it to anyone else. If you received it in error please notify us > immediately > > and then destroy it. > > > > The contents of this e-mail are intended for the named addressee only. It > contains information that may be confidential. Unless you are the named > addressee or an authorized designee, you may not copy or use it, or disclose > it to anyone else. If you received it in error please notify us immediately > and then destroy it. > The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it.
