Hi Andun,

Please see some comments in-line.

On Fri, Aug 24, 2012 at 9:25 PM, Andun Sameera <[email protected]> wrote:

> Hi All,
>
> I am developing some test scenarios for the VFS transport to
> check properties given in 
> [1]<http://wso2.org/project/esb/java/3.0.1/docs/transports/transports-catalog.html#VfsTrp>.
> Want to clarify the observation which I noticed are
> correct. Some suspicious behaviors are observed and those observations are
> given in RED.
>
> Thanks
> AndunSLG
>
> [1] -
> http://wso2.org/project/esb/java/3.0.1/docs/transports/transports-catalog.html#VfsTrp
>
> *1 - Deploying a proxy with transport.vfs.FileURI = Invalid URI, I used a
> folder which not exists.*
>
> *Proxy :*
>
> <proxy name="VFSProxy15"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test
> /invalid/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
>

VFS proxies do not validate the file URIs as http/s proxies validate the
endpoint. So, the proxy should get deployed successfully. You may see some
errors when the proxy tries to poll the specified file location,, which is
acceptable.

>
> *2 - Deploying a proxy with transport.vfs.ContentType = Invalid*
>
> *Proxy :*
>
> <proxy name="VFSProxy16"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">invalid/invalid</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> The input file was successfully processed, and out put was
> created successfully.
>

I am not sure about this. I think there may be a default message builder
which gets picked up if the content type is invalid (i.e. non existing
content types). AFAIU this content type is needed after the file is
processed and when it is building the message.

>
> *3 - Deploying a proxy with transport.vfs.ContentType = Not Specified, This
> was a mandatory property in spec.*
>
> *Proxy :*
>
> <proxy name="VFSProxy17" startOnLoad="true" trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
>

What happens when you put a file to the file location? Does it get
processed?

>
> *4 - Deploying a proxy with transport.PollInterval  **=Non Integer, *
>
> *Proxy :*
>
> <proxy name="VFSProxy18"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1.1</parameter>
> <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successully.
> The input file was not processed.
>

Acceptable. Do you see any errors in the ESB logs? If not you can raise a
jira for this.

>
> *5 - Deploying a proxy with **transport.vfs.ActionAfterProcess = Invalid,
> *
>
> *Proxy :*
>
> <proxy name="VFSProxy19"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.vfs.ActionAfterProcess">MOVEDD</parameter>
> <parameter name="transport.PollInterval">1</parameter>
> <parameter
> name="transport.vfs.MoveAfterProcess">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/original/</parameter>
> <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> The input file was successfully processed, and out put was
> created successfully.
>

Action after process is to decide what we should do to the file after
processing it. If it is not MOVED, then it is DELETED (i.e. default
behaviour is to DELETE). So I think, your file should get deleted after
processing.

>
> *6 - Deploying a proxy with **transport.vfs.ActionAfterFailure = Invalid,
> *
>
> *Proxy :*
>
> <proxy name="VFSProxy20"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
>     <target>
>         <endpoint>
>             <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                      format="soap12"/>
>         </endpoint>
>         <outSequence>
>             <property name="OUT_ONLY" value="true"/>
>             <send>
>                 <endpoint>
>                     <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>                 </endpoint>
>             </send>
>         </outSequence>
>     </target>
>     <parameter name="transport.PollInterval">1</parameter>
>     <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
>     <parameter
> name="transport.vfs.MoveAfterFailure">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/failure/</parameter>
>     <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
>     <parameter name="transport.vfs.ContentType">text/xml</parameter>
>     <parameter name="transport.vfs.ActionAfterFailure">MOVEDD</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> Failure Happens due to file content.
>

Again the same as the previous scenario. File should get deleted.

>
> *7 - Deploying a proxy with **transport.vfs.MoveAfterProcess = Invalid, *
>
> *Proxy :*
>
> <proxy name="VFSProxy21"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.vfs.ActionAfterProcess">MOVE</parameter>
> <parameter name="transport.PollInterval">1</parameter>
> <parameter
> name="transport.vfs.MoveAfterProcess">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test
> /invalid/</parameter>
> <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> The input file was successfully processed, and out put was
> created successfully.
>

Here the observation should be moving the file, because you have defined a
non-existing location to move the file. If the location is not there, it is
created and then the file is moved AFAIR.

>
> *8 - Deploying a proxy with **transport.vfs.MoveAfterFailure = Invalid, *
>
> *Proxy :*
>
> <proxy name="VFSProxy22"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>16
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter
> name="transport.vfs.MoveAfterFailure">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test
> /invalid/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> <parameter name="transport.vfs.ActionAfterFailure">MOVE</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> Failure Happens due to file content.
>

Was the file moved to the place you have defined?

>
> *9 - Deploying a proxy with **transport.vfs.ReplyFileURI  = Invalid, *
>
> *Proxy :*
>
> <proxy name="VFSProxy23"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test
> /invalid/out.xml"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> The Out Put File Was Created in the Non Existing folder by Creating that
> folder.
>

This is the expected behaviour.

>
> *10- Deploying a proxy with **transport.vfs.ReplyFileName  = Invalid Just
> Gave a rubbish name for the file. I don't know it is correct invalid name,
> *
>
> *Proxy :*
>
> <proxy name="VFSProxy24"
>        transports="vfs"
>        startOnLoad="true"
>        trace="disable">
> <target>
>     <endpoint>
>         <address uri="
> http://localhost:9000/services/SimpleStockQuoteService";
>                  format="soap12"/>
>     </endpoint>
>     <outSequence>
>         <property name="transport.vfs.ReplyFileName"
>                   value="out###@_!#!#[email protected]"
>                   scope="transport"/>
>         <property name="OUT_ONLY" value="true"/>
>         <send>
>             <endpoint>
>                 <address
> uri="vfs:file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/out/"/>
>             </endpoint>
>         </send>
>     </outSequence>
> </target>
> <parameter name="transport.PollInterval">1</parameter>
>  <parameter
> name="transport.vfs.FileURI">file:///media/Studies/My_Works/WSO2_Carbon_Trunk/platform_4.0.0/4.0.0/products/esb/4.5.0/modules/integration/tests/target/test-classes/artifacts/ESB/synapseconfig/vfsTransport/test/in/</parameter>
> <parameter name="transport.vfs.FileNamePattern">.*\.xml</parameter>
> <parameter name="transport.vfs.ContentType">text/xml</parameter>
> </proxy>
>
> *Observations :*
>
> Proxy Deployed Successfully.
> The input file was successfully processed, and out put was
> created successfully.
>

What was the name of the file? is it that rubbish name. I think if you do
not define an absolute file path, it treats the value as a relative path
and do the needful.

Regards,
AmilaM.

>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
*Amila Maharachchi*
Technical Lead
Member, Management Committee - Cloud & Platform TG
WSO2, Inc.; http://wso2.com

Blog: http://maharachchi.blogspot.com
Mobile: +94719371446
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to