On 26 February 2010 18:32, Bob Brodt <bbr...@redhat.com> wrote:
> Thanks for the input Rafal. What do you suggest as an alternative to the 
> eclipse BPEL editor? vi? ;)

As I said before, XSD aware XML editor does a good job. Eclipse has a
very good such editor. So you may try it.
As for VI, I haven't seen such plugin.
Actually VI connected with XML validator (like xmlbeans validate) is
some kind of option too.
I would love to see eclipse plugin, which extends XML editor by xpaths
and xqueries completion. This would be great tool for bpel editing.

> _______________________________________
> Robert ("Bob") Brodt
> Senior Software Engineer, JBoss Riftsaw
> JBoss by Red Hat
>
> ----- Original Message -----
> From: "Rafal Rusin" <rafal.ru...@gmail.com>
> To: dev@ode.apache.org
> Sent: Friday, February 26, 2010 1:52:14 AM GMT -07:00 US/Canada Mountain
> Subject: Re: Ode Woes
>
> Here are my thoughts: don't use eclipse bpel editor and use XSD aware
> XML editor instead.
> It will save your time and give performance.
>
> On 25 February 2010 23:30, Bob Brodt <bbr...@redhat.com> wrote:
>> Only if I forcibly insert a namespace prefix in one of the variables I'm 
>> using in the process - this of course causes a validation error from the 
>> editor. But at least I'm able to deploy the thing and send messages to it. 
>> Now I'm running into another problem with the XPath starts-with() function.
>>
>> _______________________________________
>> Robert ("Bob") Brodt
>> Senior Software Engineer, JBoss Riftsaw
>> Home: (719) 481-5628
>> Cell: (719) 440-9825
>> JBoss by Red Hat
>>
>> ----- Original Message -----
>> From: "Song Thuy Nguyen" <programm...@biaqua.de>
>> To: dev@ode.apache.org
>> Sent: Thursday, February 25, 2010 3:16:57 PM GMT -07:00 US/Canada Mountain
>> Subject: RE: Ode Woes
>>
>> Hey Robert,
>> So you did it? You could make it work like it supposed to be?
>>
>> Greetings,
>>
>> Song Thuy Nguyen
>>
>>> -----Original Message-----
>>> From: Bob Brodt [mailto:bbr...@redhat.com]
>>> Sent: Thursday, February 25, 2010 10:38 PM
>>> To: dev@ode.apache.org
>>> Subject: Re: Ode Woes
>>>
>>> Hi Song Thuy,
>>>
>>> Yes, that's exactly the problems I've been having with the eclipse bpel
>>> editor. It seems like the editor caches all of the namespaces and
>>> prefixes and doesn't refresh the cache after working in the source
>>> view. I can't imagine a single business process being THAT large that
>>> it would require a cache.
>>>
>>> _______________________________________
>>> Robert ("Bob") Brodt
>>> Senior Software Engineer, JBoss Riftsaw
>>> Home: (719) 481-5628
>>> Cell: (719) 440-9825
>>> JBoss by Red Hat
>>>
>>> ----- Original Message -----
>>> From: "Song Thuy Nguyen" <programm...@biaqua.de>
>>> To: dev@ode.apache.org
>>> Sent: Thursday, February 25, 2010 1:39:59 PM GMT -07:00 US/Canada
>>> Mountain
>>> Subject: RE: Ode Woes
>>>
>>> Hello Robert,
>>> I had nightmares about the same failure. Let me guess: you are using
>>> eclipse bpel designer right? If yes, try to do this: While creating
>>> your BPEL process, save often, espcially after creating invoke calls to
>>> a partnerlink and creating variables. SAVE, CLOSE the bpel file and
>>> REOPEN it, check back if the method that is called with the partnerlink
>>> and it's in and out parameter are in order.
>>>
>>> While having the same problem, I tried everything to figure out the
>>> problem: writing the bpel file manually (hell of a task, too much for
>>> my brain) didn't work out, comparing a working example with a failed
>>> one (same invoke, similiar structure) : I didn't find any noticeable
>>> difference. As last I tried to document each step I went through to
>>> create the bpel file and tried different workflows and I finally found
>>> the workaround as descriped above.
>>> I suppose that there are inconsistencies between the bpel source code
>>> (aka bpel file) and the model representation in the mainmemory. If you
>>> keep working on the bpel file and just save without close-and-reopen
>>> the inconsistency grows and somehow three will be an error-prone write
>>> action on the bpel file, creating the failure.
>>> When solving this problem I was just happy to get the bpel-process
>>> working and since I've lost about 2 weeks on this error didn't have
>>> time to care anymore about what bpel code really created the
>>> selectionError. I just went on with the development...
>>>
>>> I hope this workaround will help you solving the problem and that you
>>> have more time to find out what really cause this.
>>>
>>> Good luck to you!
>>>
>>>
>>> Song Thuy Nguyen
>>>
>>> > -----Original Message-----
>>> > From: Bob Brodt [mailto:bbr...@redhat.com]
>>> > Sent: Thursday, February 25, 2010 7:44 PM
>>> > To: dev@ode.apache.org; anto...@toulme.name
>>> > Subject: Re: Ode Woes
>>> >
>>> > Thank you for the reply Antoine. I have been looking through the ODE
>>> > mail archives and finding similar posts. I think it has to do with a
>>> > variable initialization problem...
>>> >
>>> > _______________________________________
>>> > Robert ("Bob") Brodt
>>> > Senior Software Engineer, JBoss Riftsaw
>>> > Home: (719) 481-5628
>>> > Cell: (719) 440-9825
>>> > JBoss by Red Hat
>>> >
>>> > ----- Original Message -----
>>> > From: "Antoine Toulme" <antoine.tou...@gmail.com>
>>> > To: dev@ode.apache.org
>>> > Sent: Thursday, February 25, 2010 11:03:10 AM GMT -07:00 US/Canada
>>> > Mountain
>>> > Subject: Re: Ode Woes
>>> >
>>> > That's because one of your bpel copy is not valid. It's difficult to
>>> > say
>>> > without seeing the bpel:copy in question.
>>> >
>>> > Thanks,
>>> >
>>> > Antoine
>>> >
>>> > On Thu, Feb 25, 2010 at 08:04, Bob Brodt <bbr...@redhat.com> wrote:
>>> >
>>> > > Hi all,
>>> > >
>>> > > I'm having a devil of a time trying to build & run some simple BPEL
>>> > > processes in tomcat/ODE. When I try to send a valid message to the
>>> > BPEL
>>> > > service, I'm getting a "selectionFailure" fault back, caused by
>>> (I'm
>>> > > assuming) a BPEL execution error. Here's the webserver log file
>>> > > (~/apache-tomcat-5.5.28/logs/catalina.out):
>>> > >
>>> > > DEBUG - GeronimoLog.debug(66) | The system is checking for the
>>> > operation
>>> > > using the following WSAAction:
>>> > > DEBUG - GeronimoLog.debug(66) | Checking for Operation using SOAP
>>> > message
>>> > > body's first child's local name : inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | Found operation
>>> > > org.apache.axis2.description.inoutaxisoperat...@11650df
>>> > > DEBUG - GeronimoLog.debug(66) | Received request message for
>>> > > Quickstart_bpel_blueprint1_inventoryService.{
>>> > > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | Starting transaction.
>>> > > DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
>>> > > http://manufacturing.org/wsdl/inventory/bp1}inventoryService -->
>>> > > [BpelProcess[{
>>> > > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]]
>>> > > DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation:
>>> > > name=inventoryService
>>> > > style=REQUEST_RESPONSE,1
>>> > > Input: name=purchaseOrder
>>> > > Message:
>>> name={http://manufacturing.org/wsdl/inventory/bp1}POMessage
>>> > > Part: name=purchaseOrder
>>> > > typeName={http://manufacturing.org/xsd/purchase}purchaseOrderType
>>> > > Output: name=inventoryStatus
>>> > > Message: name={
>>> > > http://manufacturing.org/wsdl/inventory/bp1}InventoryMessage
>>> > > Part: name=inventoryPart
>>> > > typeName={http://manufacturing.org/xsd/inventory}inventoryType
>>> > > Fault: name=inventoryFaultType
>>> > > Message:
>>> > name={http://manufacturing.org/wsdl/inventory/bp1}inventoryFault
>>> > > Part: name=faultInfo
>>> > > elementName={http://manufacturing.org/xsd/inventory}inventoryFault
>>> > from
>>> > > service
>>> {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | SET MEX property isTwoWay = true
>>> > > DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX
>>> > > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
>>> > calling {
>>> > >
>>> >
>>> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
>>> > ervice(...)
>>> > > }
>>> > > DEBUG - GeronimoLog.debug(66) | Message content:  <?xml
>>> version="1.0"
>>> > > encoding="UTF-8"?>
>>> > > <message><purchaseOrder
>>> > xmlns:pur="http://manufacturing.org/xsd/purchase";
>>> > > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>
>>> > >            <orderId xmlns="http://manufacturing.org/xsd/purchase
>>> > > ">123</orderId>
>>> > >            <customerId xmlns="http://manufacturing.org/xsd/purchase
>>> > > ">456</customerId>
>>> > >            <orderDescription
>>> > xmlns="http://manufacturing.org/xsd/purchase
>>> > > ">OrderVal_Any_Description</orderDescription>
>>> > >            <price xmlns="http://manufacturing.org/xsd/purchase"/>
>>> > >         </purchaseOrder></message>
>>> > > DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==>
>>> BpelProcess[{
>>> > > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]
>>> > > DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX
>>> > > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
>>> > calling {
>>> > >
>>> >
>>> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
>>> > ervice(...)
>>> > > }
>>> > > DEBUG - GeronimoLog.debug(66) | Commiting transaction.
>>> > > DEBUG - GeronimoLog.debug(66) | handleWorkEvent: InvokeInternal
>>> event
>>> > for
>>> > > mexid hqejbhcnphr52e5fhhmg6q
>>> > > DEBUG - GeronimoLog.debug(66) | >>
>>> > > handleWorkEvent(jobData={mexid=hqejbhcnphr52e5fhhmg6q, pid={
>>> > > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15,
>>> > > type=INVOKE_INTERNAL})
>>> > > DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid
>>> > > hqejbhcnphr52e5fhhmg6q
>>> > > DEBUG - GeronimoLog.debug(66) | GET MEX property
>>> > > org.apache.ode.bpel.myRoleSessionId = null
>>> > > DEBUG - GeronimoLog.debug(66) | GET MEX property
>>> > > org.apache.ode.bpel.myRoleSessionId = null
>>> > > DEBUG - GeronimoLog.debug(66) | GET MEX property
>>> > > org.apache.ode.bpel.partnerRoleSessionId = null
>>> > > DEBUG - GeronimoLog.debug(66) | INPUTMSG:
>>> > > inventorySevicePLink.inventoryService: MSG RCVD keys=[]
>>> > mySessionId=null
>>> > > partnerSessionId=null
>>> > > DEBUG - GeronimoLog.debug(66) | INPUTMSG:
>>> > > inventorySevicePLink.inventoryService: routing failed, CREATING NEW
>>> > INSTANCE
>>> > > DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for
>>> > instance
>>> > > 1164. INDEXED STATE={}
>>> > > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9:
>>> USING
>>> > > CORRELATOR inventorySevicePLink.inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9:
>>> > CHECKING for
>>> > > NEW INSTANCE match
>>> > > DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH: Changing process
>>> > instance
>>> > > state from ready to active
>>> > > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9:
>>> FOUND
>>> > match
>>> > > for NEW instance mexRef={MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client
>>> > > hqejbhcnphr52e5fhhmg6p] calling {
>>> > >
>>> >
>>> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
>>> > ervice(...)
>>> > > }
>>> > > DEBUG - GeronimoLog.debug(66) | ProcessImpl completed with fault '{
>>> > > http://docs.oasis-
>>> > open.org/wsbpel/2.0/process/executable}selectionFailure'
>>> > > DEBUG - GeronimoLog.debug(66) | Processing an async reply from
>>> > service {
>>> > > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | Received myrole mex response
>>> callback
>>> > > DEBUG - GeronimoLog.debug(66) | Handling response for MEX
>>> > > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
>>> > calling {
>>> > >
>>> >
>>> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
>>> > ervice(...)
>>> > > }
>>> > > DEBUG - GeronimoLog.debug(66) | Starting transaction.
>>> > > DEBUG - GeronimoLog.debug(66) | Fault response message: {
>>> > > http://docs.oasis-
>>> > open.org/wsbpel/2.0/process/executable}selectionFailure
>>> > > DEBUG - GeronimoLog.debug(66) | Returning fault: <?xml
>>> version='1.0'
>>> > > encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
>>> > >
>>> >
>>> http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><soapenv:Fault
>>> > ><faultcode>soapenv:Server</faultcode><faultstring
>>> > > xmlns:axis2ns2198="
>>> > > http://docs.oasis-
>>> >
>>> open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</f
>>> > aultstring><detail
>>> > > /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
>>> > > DEBUG - GeronimoLog.debug(66) | Releasing mex
>>> hqejbhcnphr52e5fhhmg6q
>>> > > DEBUG - GeronimoLog.debug(66) | Comitting transaction.
>>> > > DEBUG - GeronimoLog.debug(66) | Reply for
>>> > > Quickstart_bpel_blueprint1_inventoryService.{
>>> > > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
>>> > > DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
>>> > > encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
>>> > >
>>> >
>>> http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><soapenv:Fault
>>> > ><faultcode>soapenv:Server</faultcode><faultstring
>>> > > xmlns:axis2ns2198="
>>> > > http://docs.oasis-
>>> >
>>> open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</f
>>> > aultstring><detail
>>> > > /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
>>> > > DEBUG - GeronimoLog.debug(66) | Received myrole mex response
>>> callback
>>> > > INFO - GeronimoLog.info(79) | Refreshing SYSTEM CRON jobs.
>>> > >
>>> > > I'm using SOAPUI to send the messages. Here's a sample message
>>> which
>>> > should
>>> > > return a success status:
>>> > >
>>> > > <soapenv:Envelope
>>> > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
>>> > > xmlns:pur="http://manufacturing.org/xsd/purchase";>
>>> > >   <soapenv:Header/>
>>> > >   <soapenv:Body>
>>> > >      <pur:inventoryService>
>>> > >         <purchaseOrder>
>>> > >            <pur:orderId>123</pur:orderId>
>>> > >            <pur:customerId>456</pur:customerId>
>>> > >
>>> > >
>>> > <pur:orderDescription>OrderVal_Any_Description</pur:orderDescription>
>>> > >            <pur:price></pur:price>
>>> > >         </purchaseOrder>
>>> > >      </pur:inventoryService>
>>> > >   </soapenv:Body>
>>> > > </soapenv:Envelope>
>>> > >
>>> > > Does anyone know why I'm getting this "selectionFailure"?
>>> > > Thanks!
>>> > >
>>> > >
>>> > > Bob Brodt
>>> > >
>>
>>
>
>
> Regards,
> --
> Rafał Rusin
> http://rrusin.blogspot.com
> http://www.touk.pl
> http://top.touk.pl
>


Regards,
-- 
Rafał Rusin
http://rrusin.blogspot.com
http://www.touk.pl
http://top.touk.pl

Reply via email to