Comments on: SOA Suite File Adapter Pre and Post processing using Valves and Pipelines https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/ Friends of Oracle and Java Sat, 01 Aug 2015 11:10:05 +0000 hourly 1 http://wordpress.org/?v=4.2.3 By: Kevin Brown https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-7939 Fri, 31 Oct 2014 18:33:30 +0000 http://technology.amis.nl/blog/?p=13849#comment-7939 Question: I have followed your instructions to a T and I am not having the output that I am looking for. I am using the ReentrantUnzipValve which extends the AbstractStagedValve – as I am trying to unzip a zip folder which contains multiple files and extract the contents of the zip folder to a different location by using and read and write file adapter. I am using file adapters because I need to poll a specific directory for said zip folder and after the Java class unzips and stages files in staging area I am trying to specify a location with the write adapter for these files to reside (which is a different location than where the read adapter is polling from).

One issue I am having is in the write adapter it wants me to specify a file pattern name – which in this case I don’t really have one because I am polling for a zip in the read adapter and when I write with write adapter it would no longer be a zip … inevitably I would expect it to turn the zip into a regular folder (as one would expect when files are extracted from a zipped folder) and a regular folder does NOT have a file extension type – and .dir doesn’t really work here so … does anyone know what I am doing wrong or a better way to approach this????

Thanks so much in advance.

Kind Regards.

]]>
By: Harisudhan Selvaraj https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-7936 Wed, 29 Oct 2014 14:56:39 +0000 http://technology.amis.nl/blog/?p=13849#comment-7936 Hi Lucas,

I am getting the following error message when I deploy the class file in PART 1 to generate a JAR file.

Error(14,8): unzipwithvalue.MyFirstValue is not abstract and does not override abstract method cleanup() in oracle.tip.pc.services.pipeline.AbstractValve

Please advise.

Thanks,
Harisudhan Selvaraj

]]>
By: AK https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-7929 Tue, 21 Oct 2014 00:58:07 +0000 http://technology.amis.nl/blog/?p=13849#comment-7929 Yes, it is mandatory to do a bounce

]]>
By: AK https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-7928 Tue, 21 Oct 2014 00:56:54 +0000 http://technology.amis.nl/blog/?p=13849#comment-7928 All the dependent jar files including the class file for the valve(MyFirstValve) should be put under /oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1 directory followed by running
ant as shown below –

[oracle@soabpm-vm oracle.soa.ext_11.1.1]$ ant
Buildfile: build.xml

create-manifest-jar:
[echo] Creating oracle.soa.ext at /oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1/oracle.soa.ext.jar :/oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1/MyFirstValve.jar:/oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1/classes

BUILD SUCCESSFUL
Total time: 0 seconds

Else you will get the following error in the diagnostic logs –

racle.tip.pc.services.pipeline.PipelineException: Class [client.custom.pipeline.value.MyFirstValve] not found
at oracle.tip.pc.services.pipeline.PipelineFactory.getValveInstance(PipelineFactory.java:277)
at oracle.tip.pc.services.pipeline.PipelineFactory.instantiateModel(PipelineFactory.java:197)
at oracle.tip.pc.services.pipeline.PipelineTemplate.newPipeline(PipelineTemplate.java:39)
at oracle.tip.adapter.file.inbound.ProcessorDelegate.getWrappedFile(ProcessorDelegate.java:471)
at oracle.tip.adapter.file.inbound.ProcessorDelegate.process(ProcessorDelegate.java:139)
at oracle.tip.adapter.file.inbound.ProcessWork.run(ProcessWork.java:349)
at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
Caused by: oracle.classloader.util.AnnotatedClassNotFoundException:

Missing class: client.custom.pipeline.value.MyFirstValve

Dependent class: oracle.tip.pc.services.pipeline.PipelineFactory
Loader: sun.misc.Launcher$AppClassLoader@278305896
Code-Source: /oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.fabric_11.1.1/bpm-infra.jar
Configuration: /oracle/fmwhome/Oracle_SOA1/soa/modules/oracle.soa.fabric_11.1.1/bpm-infra.jar

This load was initiated at default.composite.ReadlResourceRoleExcel.soa_cf2a49d3-d6f1-4415-8658-d1fa25077fc0:1.0 using the Class.forName() method.

at oracle.classloader.PolicyClassLoader.handleClassNotFound(PolicyClassLoader.java:2190)
at oracle.classloader.PolicyClassLoader.internalLoadClass(PolicyClassLoader.java:1733)
at oracle.classloader.PolicyClassLoader.loadClass(PolicyClassLoader.java:1689)
at oracle.classloader.PolicyClassLoader.loadClass(PolicyClassLoader.java:1674)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at oracle.tip.pc.services.pipeline.PipelineFactory.getValveInstance(PipelineFactory.java:274)
… 8 more

]]

]]>
By: Lucas Jellema https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-6911 Fri, 02 Dec 2011 05:59:45 +0000 http://technology.amis.nl/blog/?p=13849#comment-6911 Yes, you do have to bounce the JVM in order for changes to be picked up.

]]>
By: Praveen Challa https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-6910 Fri, 02 Dec 2011 00:52:48 +0000 http://technology.amis.nl/blog/?p=13849#comment-6910 Nice blog. Do you have to bounce the SOA server to take the java changes effect?

]]>
By: Publishing the Product Details WebService based on an Excel based Product Catalog using the SOA Suite 11g File Adapter with Synchronous File Read « AMIS Technology blog https://technology.amis.nl/2011/10/24/soa-suite-file-adapter-pre-and-post-processing-using-valves-and-pipelines/#comment-6909 Mon, 14 Nov 2011 12:52:37 +0000 http://technology.amis.nl/blog/?p=13849#comment-6909 […] what would be added to what you have seen above: using the Valve (discussed in detail in http://technology.amis.nl/blog/13849/soa-suite-file-adapter-pre-and-post-processing-using-valves-and…), the File Adapter binding would be extended with functionality to turn a binary (or XLSX) Excel […]

]]>