Re: WSIF extn for BSF
Aleksander Slominski <[email protected]> Wed, 28 Sep 2005 00:36:32 -0500
| Newsgroups | gmane.comp.apache.webservices.wsif.devel,gmane.comp.apache.webservices.wsif.user |
|---|---|
| Message-ID | <[email protected]> |
Bhuvan Gupta wrote: > Can you send me the URL of JIRA and SVN as I can't find that > information at WSIF homepage. > http://ws.apache.org/wsif only provides details on CVS and bugzilla. http://issues.apache.org/jira/browse/WSIF http://svn.apache.org/viewcvs.cgi/webservices/wsif/trunk/java/ and we definitely need to update WSIF website - i just put jira issue for it to remind about it ... http://issues.apache.org/jira/browse/WSIF-76 thanks, alek > ----- Original Message ----- > *From:* Aleksander Slominski <mailto:[email protected]> > *To:* [email protected] <mailto:[email protected]> > *Cc:* WSIF Dev <mailto:[email protected]> > *Sent:* Tuesday, September 27, 2005 10:39 PM > *Subject:* Re: WSIF extn for BSF > > Bhuvan Gupta wrote: > >> Hi All, >> >> We have developed WSIF extensions for BSF (Bean Scripting >> Framework) as part of one of our projects and would like to >> contribute this to the WSIF project. >> Document containing details in attached. > > hi Bhuvan, > > this looks great (just a minor issues [1]) and definitely would be > a great contribution to WSIF. > >> >> Let me know the procedure to commit it to the CVS. > > we have moved now to SVN. > > if you are an apache commiter (i was not able to determine that) > then WS PMC can grant you karma to commit or i can apply your code > as a patch. > > if the contribution is bigger in size and you are not apache > commiter i think we will need signed Contributor License > Agreements (and Software Grant depending on size). see towards the > end of http://www.apache.org/licenses/ > > thanks, > > alek > > [1] please do not send MS Word DOC attachment - they are sometimes > filtered and not everybody can read MS Word documents. below is > rendering of ti as HTML (copy and past) for anybody interested: > > *WSDL BSF Extension* > > 1. *Details :* > > The BSF binding is a WSDL binding that allows abstract > functionality in the abstract service description (messages, > operation and port types) to be mapped to the functionality > offered by Scripts directly. This means that a script can be > described using WSDL, and can be accessed as a WSDL- described > service through WSIF. > > This makes use of Bean Scripting Framework (BSF) to provide the > scripting capabilities. > > The BSF binding extends WSDL with the following extensibility > elements: > > <definitions ....> > > <!-- BSF binding --> > > <binding ...> > > <bsf:binding/> > > <operation>* > > <bsf:operation > > methodname="nmtoken" > > parameterOrder="nmtoken" ? > > returnPart="nmtoken"? />? > > <input name="nmtoken"? />? > > <output name="nmtoken"? />? > > <fault name="nmtoken"? />? > > </operation> > > </binding> > > <service ... > > > <port>* > > <bsf:script lang="nmtoken" > > src="nmtoken"? > > > <!--actual script here -- > > > </bsf:script> > > </port> > > </service> > > </definitions> > > Each element is described in detail below. > > * *bsf:binding* This indicates that the binding is a BSF binding. > > * *bsf:operation* This element maps an abstract WSDL operation > to a Script method. The methodName attribute specifies the > name of the Script method corresponding to the abstract > operation. The parameterOrder attribute is similar to and > overrides the paramterOrder specification in the abstract > operation. It specifies the ordering of the input message > parts for the invocation; in the BSF binding case it > identifies the method signature. Having a parameterOrder > attribute here allows us to map an abstract operation to a > Script method even if their signatures aren't compatible in > the ordering of parts. The returnPart is that part of the > abstract output message which corresponds to the return > value of the Script method. > > * *bsf:script* This element is an extension under the WSDL > port element that allows specification of a Script as an > endpoint for a service available via the BSF binding. The > port whose address is specified this way must be associated > with a BSF binding only. > > The *lang* attribute specifies the scripting engine to be > used for script invocation. The *src* attribute specifies > the location of the script file. The complete script can > also be provided instead as CDATA value for the *bsf:script > *element. > > > 2. Example : > > In the following example, a dateConversion service is offered > through Java Script. The service exposes *converData* operation > which takes three input parameters (input data string, input > dataformat and output dateformat) and returns the converted date > string. > > <?xml version='1.0' encoding='UTF-8'?> > > <definitions name='DateConversion' > > > targetNamespace='http://xml.apache.org/axis/wsif/samples/js/DateConversion' > > > > xmlns:tns='http://xml.apache.org/axis/wsif/samples/js/DateConversion' > > > xmlns:format="http://schemas.xmlsoap.org/wsdl/formatbinding/" > > xmlns:bsf='http://schemas.xmlsoap.org/wsdl/bsf/' > > xmlns:xsd='http://www.w3.org/2001/XMLSchema' > > xmlns='http://schemas.xmlsoap.org/wsdl/'> > > <message name='convertDateRequest'> > > <part name='dateString' type='xsd:string'/> > > <part name='inFormat' type='xsd:string'/> > > <part name='outFormat' type='xsd:string'/> > > </message> > > <message name='convertDateResponse'> > > <part name='result' type='xsd:string'/> > > </message> > > <portType name='DateConversionPortType'> > > <operation name='convertDate'> > > <input message='tns:convertDateRequest'/> > > <output message='tns:convertDateResponse'/> > > </operation> > > </portType> > > <binding name='DateConversionBSFBinding' > > type='tns:DateConversionPortType'> > > <bsf:binding/> > > <operation name="convertDate"> > > <bsf:operation > > methodName="convertDate" > > parameterOrder="dateString inFormat outFormat" > > returnPart="result" /> > > <input name="convertDateRequest"/> > > <output name="convertDateResponse"/> > > </operation> > > </binding> > > <service name='DateConversion'> > > <port name='DateConversionPort' > > binding='tns:DateConversionBSFBinding'> > > <!-- vendor-specific deployment information needs to > be entered here --> > > <bsf:script lang="javascript" > src="C:\\bhuvan\\wsif-2_0\\samples\\bpel\\Test.js"/> > > </port> > > </service> > > </definitions> > > > >-- >The best way to predict the future is to invent it - Alan Kay > > > ------------------------------------------------------------------------------------------------------------------------------------ > This email is intended for the exclusive use by the person(s) > mentioned as recipient(s). If you receive this email by mistake, > please notify the sender and delete this email immediately from > your system and destroy all copies of it. You may not, directly or > indirectly, use, disclose, distribute, print or copy this email or > any part of it if you are not the intended recipient. This email > and its attachments, if any, contain confidential information > and/or may contain information protected by intellectual property > rights or other rights. This email shall/may not be construed to > constitute any commitment from Fiorano Software Inc. or its > subsidiaries or affiliates except when expressly agreed to in a > separate written agreement between the intended recipient and > Fiorano Software Inc. or its subsidiaries or affiliates. Opinions, > conclusions and other information expressed in this message are > not given or endorsed by my firm or employer unless otherwise > indicated by an authorized representative independent of this > message. Unencrypted electronic mail is not secure, may contain > harmful or virulent components or attachments and may not be > authentic. Fiorano Software Inc. does not make any representations > as to or the contents of this message nor for any damage caused by > the use thereof. > ------------------------------------------------------------------------------------------------------------------------------------ > Fiorano MailServer All incoming and outgoing mails are scanned for > Virus http://www.fiorano.com > > ------------------------------------------------------------------------------------------------------------------------------------ > This email is intended for the exclusive use by the person(s) > mentioned as recipient(s). If you receive this email by mistake, > please notify the sender and delete this email immediately from your > system and destroy all copies of it. You may not, directly or > indirectly, use, disclose, distribute, print or copy this email or any > part of it if you are not the intended recipient. This email and its > attachments, if any, contain confidential information and/or may > contain information protected by intellectual property rights or other > rights. This email shall/may not be construed to constitute any > commitment from Fiorano Software Inc. or its subsidiaries or > affiliates except when expressly agreed to in a separate written > agreement between the intended recipient and Fiorano Software Inc. or > its subsidiaries or affiliates. Opinions, conclusions and other > information expressed in this message are not given or endorsed by my > firm or employer unless otherwise indicated by an authorized > representative independent of this message. Unencrypted electronic > mail is not secure, may contain harmful or virulent components or > attachments and may not be authentic. Fiorano Software Inc. does not > make any representations as to or the contents of this message nor for > any damage caused by the use thereof. > ------------------------------------------------------------------------------------------------------------------------------------ > Fiorano MailServer All incoming and outgoing mails are scanned for > Virus http://www.fiorano.com -- The best way to predict the future is to invent it - Alan Kay