0

I plan to use BPEL for a project and I try to start learning by creating a simple example following tutorials (I have found this and this) and using the examples provided in the release. However, I have not been able to make anything to work, neither the small example created by me nor the examples provided. I installed Apache Ode by placing its war file in the /var/lib/tomcat/webapps directory. I have placed the examples in the /var/lib/tomcat/webapps/ode/WEB-INF/processes folder and the bin folder in tomcat/webapps/ode. When I try to call the examples following the instructions in the readme file:

sendsoap http://localhost:8080/ode/processes/helloWorld testRequest.soap

I get the error:

Error: Could not find or load main class org.apache.ode.tools.sendsoap.cline.HttpSoapSender

Regarding the browser interface, ODE main page loads (http://localhost:8080/ode/#/) but does not recognize any service or process.

I have reinstalled ODE following @Sathwik's instructions in the comment below. When restarting tomcat, I get the following information on the catalina log (I have only included the lines regarding ode), that alerts about a probable memory leak:

19-Jan-2018 10:38:43.972 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web application [ode] registered the JDBC driver [org.apache.derby.jdbc.AutoloadedDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
19-Jan-2018 10:38:43.973 WARNING [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ode] appears to have started a thread named [Timer-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: 
  java.lang.Object.wait(Native Method)
  java.util.TimerThread.mainLoop(Timer.java:552)
  java.util.TimerThread.run(Timer.java:505)
19-Jan-2018 10:38:43.973 SEVERE [localhost-startStop-2] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [ode] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@409a18d]) and a value of type [org.apache.derby.iapi.services.context.ContextManager] (value [org.apache.derby.iapi.services.context.ContextManager@33b194b]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
19-Jan-2018 10:38:45.302 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/var/lib/tomcat8/webapps/ode.war]
19-Jan-2018 10:38:56.788 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/var/lib/tomcat8/webapps/ode.war] has finished in [11,485] ms

I checked my older logs (when I was experiencing the problem in this question but had not yet reinstalled) and the output was different:

18-Jan-2018 16:23:51.645 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory [/var/lib/tomcat8/webapps/ode]
18-Jan-2018 16:23:54.631 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory [/var/lib/tomcat8/webapps/ode] has finished in [2,985] ms

I am using ODE 1.3.7, tomcat8 and Ubuntu 17.10. Is there a problem with the location of the examples or with ODE dependencies? What should be done to avoid the memory leak mentioned in the log? Should, at least, the example processes be listed in the web interface, as suggested by the tutorials?

fa__
  • 267
  • 5
  • 17
  • I assume you are using ODE 1.3.7. 1) Make sure to extract the ODE distribution into a folder without any whitespace charaters. 2) Do not run ODE within eclipse, run the tomcat outside of eclipse. 3) Copy the HelloWorld2 folder under examples into tomcat/webapps/ode/WEB-INF/processes folder 4) Start the tomcat and check if the process is deployed using the web console. – Sathwik Jan 19 '18 at 08:44
  • @Sathwik I have updated my question with further distribution details and the tomcat log when resintalling ODE following your instructions. – fa__ Jan 19 '18 at 10:39
  • Can you check the tomcat/bin/ode.log file? – Sathwik Jan 19 '18 at 12:04
  • Gosh, you have an inappropriate installation. Quoting from you updated questions " I have placed the examples in the /var/lib/tomcat/webapps/ode/WEB-INF/processes folder and the bin folder in tomcat/webapps/ode" => this is not what you are supposed to do. Follow http://ode.apache.org/war-deployment.html – Sathwik Jan 20 '18 at 07:15
  • If you are unable to get it working, I would suggest you reach us out on the ODE user mailing list. http://ode.apache.org/mailing-lists.html Send a mail to user-subscribe@ode.apache.org for registering yourself and follow the instructions in the subscription mail that you receive and post that send your question to user@ode.apache.org – Sathwik Jan 20 '18 at 07:28
  • @Sathwik I do not have the ode.log file. – fa__ Jan 20 '18 at 19:29
  • @Sathwik I am sorry but I do not understand what is wrong with my installation. Isn't that folder the Tomcat webapps folder? I have tried moving the apache ode bin to tomcat/bin but when I try to call the example the problem is the same. – fa__ Jan 20 '18 at 19:41
  • There are a lot of things going wrong for you. Even you do not have a log file generated shows that there is folder write permissions issues. Kindly follow the instructions provided out here [ode.apache.org/war-deployment.html]. For simplicity, install everything under your home directory, so that you have all the permissions required for the application to run. – Sathwik Jan 22 '18 at 05:03
  • As I have already suggested, apparoach the ODE user mailing list if you have issues executing the instructions. – Sathwik Jan 22 '18 at 05:13

0 Answers0