OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-cppa message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [ebxml-cppa] Use of "action" to link to actual java processor


Sacha,
 
OK - I see what you are saying - that much clearer description - should go in the next version of the spec's ; -)
 
Hermes is rather Spartan here in its handling of CPA - there really is not much of anything - we're trying to make it more CPA aware!
 
At the same time we're trying to open up the box a bit - so if a trading partner wants to replace the default handlers with their own - they have an easier way of doing it then having the re-compile the JAR files.
 
I wanted to explore using the CPA itself - since we can easily configure that locally.  Looks like for now the yet-another-configuration-file is the way to go - sadly!
 
So close and yet so far.  
 
The simple way to extend the CPA is to add a single tp:exec attribute to the service definition I would hazard - and make that optional.
Thanks for the help and insights.
 
DW

-------- Original Message --------
Subject: RE: [ebxml-cppa] Use of "action" to link to actual java
processor
From: Sacha Schlegel <sschlegel@cyclonecommerce.com>
Date: Tue, April 11, 2006 2:46 pm
To: "David RR Webber (XML)" <david@drrw.info>
Cc: ebxml-cppa@lists.oasis-open.org

David

An ebMS 2.0 message has the CPA id, Service and Action information. So
then you can get your CPA (by cpa id), get the Service (that gives a
CollaborationRole within the CPA) and then you search for the Action
within that Service. And if you are the receiver the
ThisPartyActionBinding must be inside a CanReceive element. If one of
these are not fulfilled you did not agree to receive such a message.

Again, cant you have that mapping, eg this service and this action have
to be processed by that method outside of the CPA? I think the action
information in the CPA is still coming from the business process and
should not be connected to a clearly private implementation of one
party. Sounds a little bit like remote method invocation but we want to
exchange business documents and then receiving side decides how to
process the received message. Eg you can have one general method
processMessage() which takes as arguments Service and Action and the
payload (or reference to the payload) and then decides to call a local
method called Purchase_Order_Request_Action() to have that private.

Sacha

PS: Unfortunately I do not yet know enough about the Hermes
implementation of things.

On Tue, 2006-04-11 at 10:46 -0700, David RR Webber (XML) wrote:
> Supplemental question:
>  
> I'm looking at how CPA identifies a payload type - and the MIME
> packaging.  It appears to link this via the service type in the ebXML
> message header to the CPA service / action - or am I missing
> something?
>  
> If so - then what I'm suggesting appears to work - you identify the
> service in the message header - and then the action binding within
> that service definition is used to do the actual processing.
>  
> Thanks, DW
>
>
>
>         -------- Original Message --------
>         Subject: [ebxml-cppa] Use of "action" to link to actual java
>         processor
>         From: "David RR Webber (XML)" <david@drrw.info>
>         Date: Tue, April 11, 2006 1:14 pm
>         To: ebxml-cppa@lists.oasis-open.org
>        
>         Team,
>          
>         I'm doing integration right now using Hermes - and I wanted to
>         have a way of controlling the processing of message types
>         directly from the CPA - to the java handler that processes the
>         content.
>          
>         It occurs to me I could extend the use of the tp:action
>         attribute in the action binding to be the actual name of the
>         java handler - since its just text anyway - the the two can be
>         equivalent - e.g. human readable - machine executable.
>          
>         What do people think here?  Is this total blasphemy - or is
>         this acceptable extension?  Or is there a better way of doing
>         this elsewhere in the CPA?
>          
>         Given that the CPA is private this is something that two
>         participants can share - and especially if they are sharing
>         open source such as Hermes.
>          
>         Thanks, DW
>          
>         Encl: example CPA fragment -
>          
>               <tp:CanSend>
>                   <tp:ThisPartyActionBinding tp:id="companyA_ABID1"
>                     tp:action="Purchase_Order_Request_Action()"
>                     tp:packageId="CompanyA_Packaging">
>                     <tp:ChannelId>asyncChannelA1</tp:ChannelId>
>                   </tp:ThisPartyActionBinding>
>                   <tp:OtherPartyActionBinding>
>                     companyB_ABID1
>                   </tp:OtherPartyActionBinding>
>                 </tp:CanSend>
>                 <tp:CanReceive>
>                   <tp:ThisPartyActionBinding tp:id="companyA_ABID7"
>                     tp:action="Purchase_Order_Confirmation_Action()"
>                     tp:packageId="CompanyA_Packaging">
>                   ...
>                 </tp:CanReceive>
>        
>         --------------------------------------------------------------------- To unsubscribe from this mail list, you must leave the OASIS TC that generates this mail. You may a link to this group and all your TCs in OASIS at: https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that
> generates this mail. You may a link to this group and all your TCs in
> OASIS at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php


---------------------------------------------------------------------
To unsubscribe from this mail list, you must leave the OASIS TC that
generates this mail.  You may a link to this group and all your TCs in OASIS
at:
https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]