Problem
Maven is not compiling the
composite when a BPEL process contains java embedding. Just incorporating java
embedding makes the maven compilation to fail. If the java embedding is removed
then the composite compilation is successful in Maven. This issue can be
reproduced with JDeveloper 12.1.3.x
Research
First I tried to solve this
issue by adding dependency declarations for orabpel.jar in the soa maven plugin
section and the pom.xml itself. However this approach doesn’t solve my issue.
After another research in the Oracle Support system I found two interesting
notes:- Unable
to compile a composite that contains a Java embedded activity with Maven
(2050971.1)
- Failure
when compiling a BPEL process in SOA 12c, ‚package com.collaxa.cube does
not exist’ (2112178.1)
Both notes describe exactly
the issue I currently have. The note 2050971.1 contains a reference to the bug
no. 20229616 wherefore no patch is available until now. But it contains a
description for a workaround. The workarounds means to put every needed Java
library in the folder SOA/SCA-INF/lib. From my perspective that isn’t an
appropriate solution, because the missing classes mention by the compiler are
in orabpel.jar. This jar file is part of SOA Suite and already available on the
infrastructure side. Moreover everything in /SCA-INF/lib is part of the
composite and uploaded to MDS. The second support note 2112178.1 references a
patch, but it doesn’t also solve the issue. Due to this I build a solution that
automates the workaround with SOA/SCA-INF/lib by using Maven plugins.
Solution
The solutions contains 3
steps:
1. Using the Maven
Dependency Plugin to copy the orabpel.jar to SOA/SCA-INF/lib folder. The copied
orabpel.jar will be renamed to only4compile.jar. Further it is important to
bind the execution of the plugin to a phase before running the Maven SOA
Plugin.
Read the complete article here.
No hay comentarios:
Publicar un comentario
Te agradezco tus comentarios. Te esperamos de vuelta.