|
From: Koen S. <koe...@go...> - 2011-06-10 09:51:53
|
Christian,
Adding Csv2Db.jar to the classpath, solved the problem. Many thanks.
As per the instructions of Method 4, I did add my jar to the wrapper.app.parameter.1 property.
What do you mean by:
"The Classloader handling in your application is slightly different when running with the WrapperJarApp.
You might need to get a little bit changed to actually use:
<Your Class>.class.getClassLoader().
instead of the static way with ClassLoader...
Changing the handling to that way, you wouldn't need to define Csv2Db.jar in the classpath..."
Do I have to change the source code ?
Regards,
Koen
-----Oorspronkelijk bericht-----
Van: Christian Mueller [mailto:chr...@ta...]
Verzonden: vrijdag 10 juni 2011 10:28
Aan: wra...@li...
Onderwerp: koe...@go... - Re: [Wrapper-user] WrapperJarApp: Encountered an error runningmain.. - Bayesian Filter detected spam
Koen,
Can you try the following:
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../lib/Csv2Db.jar
wrapper.java.classpath.3=../lib/lib/*.jar
Adding your jar to the class path should already fix your problem.
(I use a wildcard for the other jars just to make it a little bit more easy to handle the classpath)
The Classloader handling in your application is slightly different when running with the WrapperJarApp.
You might need to get a little bit changed to actually use:
<Your Class>.class.getClassLoader().
instead of the static way with ClassLoader...
Changing the handling to that way, you wouldn't need to define Csv2Db.jar in the classpath...
Please let me know if you have any further questions.
Best Regards,
Christian
On Fri, Jun 10, 2011 at 4:45 PM, Koen Stoop <koe...@go...> wrote:
> Hi all,
>
> I wrote a Java Application using Netbeans 7.0 IDE.
> The application monitors a folder for the deletion of a lockfile.
> When this happens the app starts processing by reading a csv-file in
> the monitored folder, and writing the file to a MySQL database using
> Persistence JPA 2.0
>
> This is how the {WRAPPER_HOME} folder looks like:
> <bin>
> csv2db
> wrapper
> <lib>
> Csv2Db.jar
> libwrapper.so
> wrapper.jar
> <lib>
> eclipselink-2.2.0.jar
> eclipselink-javax.persistence-2.0.jar
> jpathwatch-0-94.jar
> mysql-connector-java-5.1.13-bin.jar
> opencsv-2.2.jar
> <logs>
> wrapper.log
> <conf>
> wrapper.conf
>
> when i run the program from the <lib> folder like: "java -jar Csv2Db"
> all is working like it should be.
>
> I can start/stop it as a daemon using WrapperJarApp (Method 4) but
> when the application starts processing the csv-file it gives the following error:
>
> INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error:
> Encountered an error running main:
> INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error:
> javax.persistence.PersistenceException: No Persistence provider for
> EntityManager named Csv2DbPU INFO | jvm 1 | 2011/06/10 08:30:04 |
> WrapperJarApp Error: at
> javax.persistence.Persistence.createEntityManagerFactory(Unknown
> Source) INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error:
> at javax.persistence.Persistence.createEntityManagerFactory(Unknown
> Source) INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error:
> at
> csv2db.Csv2Db.main(Csv2Db.java:150)
> INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error: at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) INFO |
> jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error: at
> sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) INFO |
> jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error: at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) INFO
> | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error: at
> java.lang.reflect.Method.invoke(Unknown Source) INFO | jvm 1 |
> 2011/06/10 08:30:04 | WrapperJarApp Error: at
> org.tanukisoftware.wrapper.WrapperJarApp.run(WrapperJarApp.java:385)
> INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperJarApp Error: at
> java.lang.Thread.run(Unknown Source) INFO | jvm 1 | 2011/06/10
> 08:30:04 | WrapperManager Debug:
> WrapperManager.stop(1) called by thread: WrapperJarAppMain INFO |
> jvm 1 | 2011/06/10 08:30:04 | WrapperManager Debug: Send a packet
> STOP : 1 INFO | jvm 1 | 2011/06/10 08:30:04 | WrapperManager
> Debug: Stopped checking for control events.
> DEBUG | wrapperp | 2011/06/10 08:30:04 | read a packet STOP : 1 DEBUG
> | wrapper | 2011/06/10 08:30:04 | JVM requested a shutdown. (1) DEBUG
> | wrapper | 2011/06/10 08:30:04 | wrapperStopProcess(1, FALSE)
> called.
> DEBUG | wrapper | 2011/06/10 08:30:04 | Sending stop signal to JVM
>
> It seems the wrapper can't find the library "eclipselink-2.2.0.jar"
> but he can find the library "jpathwatch-0-94.jar" !?
> What is going wrong ? How can i troubleshoot this ?
>
> Here's my wrapper.conf:
> ===============================================
> #encoding=UTF-8
> # Configuration files must begin with a line specifying the encoding #
> of the the file.
>
> #********************************************************************
> # Wrapper License Properties (Ignored by Community Edition)
> #********************************************************************
> # Professional and Standard Editions of the Wrapper require a valid #
> License Key to start. Licenses can be purchased or a trial license #
> requested on the following pages:
> # http://wrapper.tanukisoftware.com/purchase
> # http://wrapper.tanukisoftware.com/trial
>
> # Include file problems can be debugged by removing the first '#'
> # from the following line:
> #include.debug
>
> # The Wrapper will look for either of the following optional files for
> a # valid License Key. License Key properties can optionally be
> included # directly in this configuration file.
> #include ../conf/wrapper-license.conf
> #include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf
>
> # The following property will output information about which License
> Key(s) # are being found, and can aid in resolving any licensing problems.
> #wrapper.license.debug=TRUE
>
> #********************************************************************
> # Wrapper Localization
> #********************************************************************
> # Specify the locale which the Wrapper should use. By default the
> system # locale is used.
> #wrapper.lang=en_US # en_US or ja_JP
>
> # Specify the location of the Wrapper's language resources. If these
> are # missing, the Wrapper will default to the en_US locale.
> wrapper.lang.folder=../lang
>
> #********************************************************************
> # Wrapper Java Properties
> #********************************************************************
> # Java Application
> # Locate the java binary on the system PATH:
> wrapper.java.command=java
> # Specify a specific java binary:
> #set.JAVA_HOME=/java/path
> #wrapper.java.command=%JAVA_HOME%/bin/java
>
> # Tell the Wrapper to log the full generated Java command line.
> wrapper.java.command.loglevel=DEBUG
>
> # Java Main class. This class must implement the WrapperListener
> interface # or guarantee that the WrapperManager class is
> initialized. Helper # classes are provided to do this for you. See
> the Integration section # of the documentation for details.
> wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperJarApp
>
> # Java Classpath (include wrapper.jar) Add class path elements as #
> needed starting from 1
> wrapper.java.classpath.1=/usr/lib/csv2db/lib/wrapper.jar
> wrapper.java.classpath.2=/usr/lib/csv2db/lib/lib/eclipselink-javax.per
> sistence-2.0.jar
> wrapper.java.classpath.3=/usr/lib/csv2db/lib/lib/eclipselink-2.2.0.jar
> wrapper.java.classpath.4=/usr/lib/csv2db/lib/lib/mysql-connector-java-
> 5.1.13-bin.jar
> wrapper.java.classpath.5=/usr/lib/csv2db/lib/lib/jpathwatch-0-94.jar
> wrapper.java.classpath.6=/usr/lib/csv2db/lib/lib/opencsv-2.2.jar
>
> # Java Library Path (location of Wrapper.DLL or libwrapper.so)
> wrapper.java.library.path.1=/usr/lib/csv2db/lib
>
> # Java Bits. On applicable platforms, tells the JVM to run in 32 or
> 64-bit mode.
> wrapper.java.additional.auto_bits=TRUE
>
> # Java Additional Parameters
> wrapper.java.additional.1=
>
> # Initial Java Heap Size (in MB)
> #wrapper.java.initmemory=3
>
> # Maximum Java Heap Size (in MB)
> #wrapper.java.maxmemory=64
>
> # Application parameters. Add parameters as needed starting from 1
> wrapper.app.parameter.1=/usr/lib/csv2db/lib/Csv2Db.jar
>
> #********************************************************************
> # Wrapper Logging Properties
> #********************************************************************
> # Enables Debug output from the Wrapper.
> wrapper.debug=TRUE
>
> # Format of output for the console. (See docs for formats)
> wrapper.console.format=PM
>
> # Log Level for console output. (See docs for log levels)
> wrapper.console.loglevel=INFO
>
> # Log file to use for wrapper output logging.
> wrapper.logfile=../logs/wrapper.log
>
> # Format of output for the log file. (See docs for formats)
> wrapper.logfile.format=LPTM
>
> # Log Level for log file output. (See docs for log levels)
> wrapper.logfile.loglevel=DEBUG
>
> # Maximum size that the log file will be allowed to grow to before #
> the log is rolled. Size is specified in bytes. The default value #
> of 0, disables log rolling. May abbreviate with the 'k' (kb) or #
> 'm' (mb) suffix. For example: 10m = 10 megabytes.
> wrapper.logfile.maxsize=0
>
> # Maximum number of rolled log files which will be allowed before old
> # files are deleted. The default value of 0 implies no limit.
> wrapper.logfile.maxfiles=0
>
> # Log Level for sys/event log output. (See docs for log levels)
> wrapper.syslog.loglevel=NONE
>
> #********************************************************************
> # Wrapper General Properties
> #********************************************************************
> # Allow for the use of non-contiguous numbered properties
> wrapper.ignore_sequence_gaps=TRUE
>
> # Title to use when running as a console
> wra...@ap...@
>
> #********************************************************************
> # Wrapper JVM Checks
> #********************************************************************
> # Detect DeadLocked Threads in the JVM. (Requires Standard Edition)
> wrapper.check.deadlock=TRUE wrapper.check.deadlock.interval=60
> wrapper.check.deadlock.action=RESTART
> wrapper.check.deadlock.output=FULL
>
> # Out Of Memory detection.
> # (Simple match)
> wrapper.filter.trigger.1000=java.lang.OutOfMemoryError
> # (Only match text in stack traces if -XX:+PrintClassHistogram is
> being
> used.)
> #wrapper.filter.trigger.1000=Exception in thread "*"
> java.lang.OutOfMemoryError
> #wrapper.filter.allow_wildcards.1000=TRUE
> wrapper.filter.action.1000=RESTART
> wrapper.filter.message.1000=The JVM has run out of memory.
>
> #********************************************************************
> # Wrapper Email Notifications. (Requires Professional Edition)
> #********************************************************************
> # Common Event Email settings.
> #wrapper.event.default.email.debug=TRUE
> #wrapper.event.default.email.smtp.host=<SMTP_Host>
> #wrapper.event.default.email.smtp.port=25
> #wrapper.event.default.email.subject=[%WRAPPER_HOSTNAME%:%WRAPPER_NAME
> %:%WRAPPER_EVENT_NAME%]
> Event Notification
> #wrapper.event.default.email.sender=<Sender email>
> #wrapper.event.default.email.recipient=<Recipient email>
>
> # Configure the log attached to event emails.
> #wrapper.event.default.email.attach_log=TRUE
> #wrapper.event.default.email.maillog.lines=50
> #wrapper.event.default.email.maillog.format=LPTM
> #wrapper.event.default.email.maillog.loglevel=INFO
>
> # Enable specific event emails.
> #wrapper.event.wrapper_start.email=TRUE
> #wrapper.event.jvm_prelaunch.email=TRUE
> #wrapper.event.jvm_start.email=TRUE
> #wrapper.event.jvm_started.email=TRUE
> #wrapper.event.jvm_deadlock.email=TRUE
> #wrapper.event.jvm_stop.email=TRUE
> #wrapper.event.jvm_stopped.email=TRUE
> #wrapper.event.jvm_restart.email=TRUE
> #wrapper.event.jvm_failed_invocation.email=TRUE
> #wrapper.event.jvm_max_failed_invocations.email=TRUE
> #wrapper.event.jvm_kill.email=TRUE
> #wrapper.event.jvm_killed.email=TRUE
> #wrapper.event.jvm_unexpected_exit.email=TRUE
> #wrapper.event.wrapper_stop.email=TRUE
>
> # Specify custom mail content
> wrapper.event.jvm_restart.email.body=The JVM was restarted.\n\nPlease
> check on its status.\n
>
> #********************************************************************
> # Wrapper Windows NT/2000/XP Service Properties
> #********************************************************************
> # WARNING - Do not modify any of these properties when an application
> # using this configuration file has been installed as a service.
> # Please uninstall the service before modifying this section. The #
> service can then be reinstalled.
>
> # Name of the service
> wra...@ap...@
>
> # Display name of the service
> wra...@ap...@
>
> # Description of the service
> wra...@ap...@
>
> # Service dependencies. Add dependencies as needed starting from 1
> wrapper.ntservice.dependency.1=
>
> # Mode in which the service is installed. AUTO_START, DELAY_START or
> DEMAND_START wrapper.ntservice.starttype=AUTO_START
>
> # Allow the service to interact with the desktop.
> wrapper.ntservice.interactive=false
>
>
>
> Thanks in advance
>
> Koen
>
>
> ----------------------------------------------------------------------
> -------- EditLive Enterprise is the world's most technically advanced
> content authoring tool. Experience the power of Track Changes, Inline
> Image Editing and ensure content is compliant with Accessibility
> Checking.
> http://p.sf.net/sfu/ephox-dev2dev
> _______________________________________________
> Wrapper-user mailing list
> Wra...@li...
> https://lists.sourceforge.net/lists/listinfo/wrapper-user
>
>
------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Wrapper-user mailing list
Wra...@li...
https://lists.sourceforge.net/lists/listinfo/wrapper-user
|