Hi all, I've done the initial implementation of the AS4 connector with the following configuration.
*AS4 send operation configuration* send operation will convert the incoming soap messages to AS4 compliant soap messages. <as4.send> <pmode>http://wso2.org/examples/agreement0</pmode> </as4.send> * pmode* - P-Mode agreement being referred. *AS4 receive operation configuration* receive operation will accept the AS4 message with payloads and save the payloads inside the dataIn folder given in the configuration. <as4.receive> <dataIn>as4DataIn</dataIn> </as4.receive> * dataIn* - Folder location where the incoming AS4 payloads are saved to. The incoming message to the AS4 send connector can be one of the following. - SOAP message with attachments - SOAP message with payload in the body. Refer [1] for a sample AS4 payload contained in the soap body. Here is a complete AS4 sending proxy configuration and AS4 receiving proxy configuration. *AS4 message sending proxy configuration* <?xml version="1.0" encoding="UTF-8"?> <proxy xmlns="http://ws.apache.org/ns/synapse" name="AS4SenderProxy" transports="http https" startOnLoad="true"> <description/> <target> <inSequence> <log/> <as4.send> <pmode>http://wso2.org/examples/agreement0</pmode> </as4.send> <call> <endpoint> <address uri="http://localhost:8281/services/AS4ReceiverProxy "/> </endpoint> </call> <respond/> </inSequence> <outSequence> <log/> </outSequence> </target> </proxy> *AS4 message receiving proxy configuration* <?xml version="1.0" encoding="UTF-8"?> <proxy xmlns="http://ws.apache.org/ns/synapse" name="AS4ReceiverProxy" startOnLoad="true" statistics="disable" trace="disable" transports="http,https"> <target> <inSequence> <log/> <as4.receive> <dataIn>as4DataIn</dataIn> </as4.receive> <respond/> </inSequence> <outSequence/> </target> <description/> </proxy> Feedback on the above would be highly appreciated. [1] According to the specification, soap body can contain at most one payload. Ex: <S12:Body xmlns:S12="http://www.w3.org/2003/05/soap-envelope" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-2004 01-wss-wssecurity-utility-1.0.xsd" wsu:Id="_f8aa8b55-b31c-4364-94d0-3615ca65aa40" > <CrossIndustryInvoice xmlns="urn:un:unece:uncefact:d ata:standard:CrossIndustryInvoice:2"> <!-- content omitted --> </CrossIndustryInvoice> </S12:Body> Thanks, Manorama On Thu, Jul 13, 2017 at 3:14 PM, Manorama Perera <manor...@wso2.com> wrote: > Hi, > > AS4 Profile of ebMS 3.0 Version 1.0[1] defines 3 conformance profiles. For > the initial phase, we are going to implement AS4 Minimal Client Conformance > Profile. > > The transport protocol used in AS4 messaging is HTTP. Hence there's no > need of introducing AS4 as a new transport. > > Considering the features included in the other conformance profiles in[1], > such as WS-Security, we are going to introduce AS4 support as a Connector > implementation, so that we can include other required features which are > described in the remaining two conformance profiles. > > [1] http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/profiles/ > AS4-profile/v1.0/cs03/AS4-profile-v1.0-cs03.html > > Thanks, > Manorama > > On Tue, Jul 4, 2017 at 2:04 PM, Manorama Perera <manor...@wso2.com> wrote: > >> >> >> On Wed, Jun 28, 2017 at 4:49 PM, Manorama Perera <manor...@wso2.com> >> wrote: >> >>> Hi all, >>> >>> AS4 is a messaging standard which represents an open standard for >>> exchanging of Business-to-business documents using Web services. >>> >>> *AS4 Messaging Model* >>> >>> AS4 messaging model defines the following entities. >>> >>> *Message Producer*: Business application which sends the message >>> content to the sending Message Service Handler(MSH). >>> >>> *Sending Message Service Handler*: Packages the message content and >>> sends to the intended receiving MSH. >>> >>> *Receiving Message Service Handler*: Receive the message from the >>> sending MSH. >>> >>> *Message Consumer*: The business application which receives the message >>> content from receiving MSH. >>> >>> *P-Mode Parameters*: Message sending and receiving operations are >>> governed by P-Mode configuration. These are configured in sending and >>> receiving MSHs. >>> >>> >>> >>> >>> The current implementation details of AS4 custom mediator[2] is as >>> follows. >>> >>> - This is in conformance with AS4 Profile of ebMS 3.0 Version 1.0[1]. >>> - The current AS4 implementation only supports features as stated in >>> the Access Point Implementation Guide (attached). >>> - One-way / Push Message Exchange Patterns (MEPs) is supported. >>> - Only the *required* P-Mode Parameters are supported (According to >>> [1]). >>> >>> >>> *Supported P-Mode Parameters* >>> >>> >>> PMode Parameter >>> >>> Supported or not >>> >>> PMode.ID >>> >>> true >>> >>> PMode.Agreement >>> >>> true >>> >>> PMode.MEP >>> >>> true >>> >>> PMode.MEPbinding >>> >>> true >>> >>> PMode.Initiator.Party >>> >>> true >>> >>> PMode.Initiator.Role >>> >>> true >>> >>> PMode.Initiator.Authorization.username >>> >>> false >>> >>> PMode.Initiator.Authorization.password >>> >>> false >>> >>> PMode.Responder.Party >>> >>> true >>> >>> PMode.Responder.Role >>> >>> true >>> >>> PMode.Responder.Authorization.username >>> >>> false >>> >>> PMode.Responder.Authorization.password >>> >>> false >>> >>> PMode.Protocol.Address >>> >>> true >>> >>> PMode.Protocol.SOAPVersion >>> >>> true >>> >>> PMode.BusinessInfo.Service >>> >>> true >>> >>> PMode.BusinessInfo.Action >>> >>> true >>> >>> PMode.BusinessInfo.Properties[] >>> >>> false >>> >>> PMode.BusinessInfo.PayloadProfile[] >>> >>> false >>> >>> PMode.BusinessInfo.PayloadProfile.maxSize >>> >>> false >>> >>> PMode.ErrorHandling.Report.SenderErrorsTo >>> >>> false >>> >>> PMode.ErrorHandling.Report.ReceiverErrorsTo >>> >>> false >>> >>> PMode.ErrorHandling.Report.AsResponse >>> >>> true >>> >>> PMode.ErrorHandling.Report.ProcessErrorNotifyConsumer >>> >>> false >>> >>> PMode.ErrorHandling.Report.ProcessErrorNotifyProducer >>> >>> true >>> >>> PMode.ErrorHandling.Report.DeliveryFailuresNotifyProducer >>> >>> true >>> >>> PMode.Security.WSSVersion >>> >>> false >>> >>> PMode.Security.X509.Sign >>> >>> false >>> >>> PMode.Security. X509.Encryption >>> >>> false >>> >>> PMode.Security.UsernameToken >>> >>> false >>> >>> PMode.Security.PModeAuthorize >>> >>> false >>> >>> PMode.Security.SendReceipt >>> >>> true >>> >>> PMode.Security.SendReceipt.NonRepudiation >>> >>> false >>> >>> PMode.PayloadService.CompressionType >>> >>> true >>> >>> PMode.ReceptionAwareness >>> >>> true >>> >>> PMode.ReceptionAwareness.Retry.Parameters >>> >>> true >>> >>> AS4 support in EI, will be introduced as a separate transport. >>> >>> [1] http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/profiles/ >>> AS4-profile/v1.0/os/AS4-profile-v1.0-os.html >>> [2] https://github.com/manoramahp/org.wso2.carbon.mediator.as4 >>> >>> Thanks, >>> Manorama >>> -- >>> Manorama Perera >>> Software Engineer >>> WSO2, Inc.; http://wso2.com/ >>> >> >> >> >> -- >> Manorama Perera >> Software Engineer >> WSO2, Inc.; http://wso2.com/ >> > > > > -- > Manorama Perera > Software Engineer > WSO2, Inc.; http://wso2.com/ > -- Manorama Perera Software Engineer WSO2, Inc.; http://wso2.com/
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture