ofbiz-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Francis ANDRE <francis.andre.kampb...@orange.fr>
Subject Re: svn commit: r1308078 - /ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
Date Sun, 01 Apr 2012 17:06:17 GMT
Hi Jacopo and Jacques

Here the point:

When running under Eclipse with the standard run launcher or the debug launcher, 
the ofbiz JVM exits as per the code in Start.java on any Error or 
StartupException since returning false from startStartLoaders() exits with a 99 
code:

     public void start() {
         if (!startStartLoaders()) {
             System.exit(99);
         }
         if (config.shutdownAfterLoad) {
             stopServer();
         }
     }

this does not help when debugging the ofbiz code. Thus, returning true from 
startStartLoaders() in any case will let the JVM alive and will make the 
développement and debugging as any standard java application.


Here the log when running the Start code and returning false on the 
NoClassDefFoundError: org/eclipse/core/runtime/CoreException:

2012-04-01 18:55:21,843 (main) [  CatalinaContainer.java:255:INFO ] Started 
Apache Tomcat/7.0.26
2012-04-01 18:55:21,843 (main) [      BirtContainer.java:50 :INFO ] Start BIRT 
container
2012-04-01 18:55:21,937 (main) [      BirtContainer.java:70 :INFO ] Startup BIRT 
platform
java.lang.NoClassDefFoundError: org/eclipse/core/runtime/CoreException
     at 
org.eclipse.birt.core.framework.Platform.createPlatformLauncher(Platform.java:115)
     at org.eclipse.birt.core.framework.Platform.startup(Platform.java:74)
     at org.ofbiz.birt.container.BirtContainer.start(BirtContainer.java:71)
     at org.ofbiz.base.container.ContainerLoader.start(ContainerLoader.java:230)
     at org.ofbiz.base.start.Start.startStartLoaders(Start.java:310)
     at org.ofbiz.base.start.Start.start(Start.java:289)
     at org.ofbiz.base.start.Start.main(Start.java:119)
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.CoreException
     at java.net.URLClassLoader$1.run(Unknown Source)
     at java.security.AccessController.doPrivileged(Native Method)
     at java.net.URLClassLoader.findClass(Unknown Source)
     at java.lang.ClassLoader.loadClass(Unknown Source)
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
     at java.lang.ClassLoader.loadClass(Unknown Source)
     ... 7 more



Le 01/04/2012 16:01, Jacopo Cappellato a écrit :
> Well,
>
> I would like to understand well what we commit; what is the problem we are trying to
fix? I don't understand what is the meaning of being thrown out... shouldn't the debug mode
work as the standard mode when an exception is thrown?
>
> Jacopo
>
> On Apr 1, 2012, at 2:09 PM, Jacques Le Roux wrote:
>
>> I guess the idea is to not being thrown out when debugging in Eclipse and be able
to troubleshoot from there. Maybe Francis can explain better?
>>
>> As it's only in DEBUG mode (explicitly passed to the JVM) I can't see any issues
with this. Do you fear something or foresee some issues?
>>
>> Jacques
>>
>> From: "Jacopo Cappellato"<jacopo.cappellato@hotwaxmedia.com>
>>> It doesn't explain why we should not exit on error.
>>>
>>> Jacopo
>>>
>>> On Apr 1, 2012, at 1:45 PM, Jacques Le Roux wrote:
>>>
>>>> Francis explained it here https://cwiki.apache.org/confluence/display/OFBIZ/Running+and+Debugging+OFBiz+in+Eclipse#RunningandDebuggingOFBizinEclipse-Debugging(orrunning)OFBizinEclipsewithhotreplacementofclasses
>>>> But he should update now because I have just added the converters in /ofbiz/framework/entity/src/META-INF/services/org.ofbiz.base.conversion.ConverterLoader
at http://svn.apache.org/viewvc?rev=1308085&view=rev
>>>>
>>>> Jacques
>>>>
>>>> From: "Jacopo Cappellato"<jacopo.cappellato@hotwaxmedia.com>
>>>>> maybe I don't understand but why should we want this?
>>>>>
>>>>> Jacopo
>>>>>
>>>>> On Apr 1, 2012, at 1:27 PM, jleroux@apache.org wrote:
>>>>>
>>>>>> Author: jleroux
>>>>>> Date: Sun Apr  1 11:27:45 2012
>>>>>> New Revision: 1308078
>>>>>>
>>>>>> URL: http://svn.apache.org/viewvc?rev=1308078&view=rev
>>>>>> Log:
>>>>>> A patch from Francis ANDRE "Avoid exiting ofbiz when running in debug
mode,i.e with -DDEBUG=true set on theJVM arguments" https://issues.apache.org/jira/browse/OFBIZ-3790
>>>>>>
>>>>>> This is a patch for allowing to run OFBiz in debug mode,i.e with
-DDEBUG=true on the JVM arguments, and avoid to exit from the process when a Error or a StartupException
occurs.
>>>>>>
>>>>>> jleroux: replaced tabs by 4 spaces
>>>>>>
>>>>>> Modified:
>>>>>>   ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
>>>>>>
>>>>>> Modified: ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
>>>>>> URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java?rev=1308078&r1=1308077&r2=1308078&view=diff
>>>>>> ==============================================================================
>>>>>> --- ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
(original)
>>>>>> +++ ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java
Sun Apr  1 11:27:45 2012
>>>>>> @@ -37,7 +37,7 @@ import java.util.List;
>>>>>> *
>>>>>> */
>>>>>> public class Start {
>>>>>> -
>>>>>> + private static final String DEBUG = System.getProperty("DEBUG");
>>>>>>    private static final String SHUTDOWN_COMMAND = "SHUTDOWN";
>>>>>>    private static final String STATUS_COMMAND = "STATUS";
>>>>>>
>>>>>> @@ -206,7 +206,7 @@ public class Start {
>>>>>>        System.setProperty("java.class.path", classPath.toString());
>>>>>>        ClassLoader classloader = classPath.getClassLoader();
>>>>>>        Thread.currentThread().setContextClassLoader(classloader);
>>>>>> -        if (System.getProperty("DEBUG") != null) {
>>>>>> +        if (DEBUG != null) {
>>>>>>            System.out.println("Startup Classloader: " + classloader.toString());
>>>>>>            System.out.println("Startup Classpath: " + classPath.toString());
>>>>>>        }
>>>>>> @@ -310,7 +310,12 @@ public class Start {
>>>>>>                    loader.start();
>>>>>>                } catch (StartupException e) {
>>>>>>                    e.printStackTrace();
>>>>>> -                    return false;
>>>>>> +                    if (DEBUG == null)
>>>>>> +                        return false;
>>>>>> +                } catch(Error e) {
>>>>>> +                    e.printStackTrace();
>>>>>> +                    if (DEBUG == null)
>>>>>> +                        return false;
>>>>>>                }
>>>>>>            }
>>>>>>            serverStarted = true;
>>>>>>
>>>>>>
>

Mime
View raw message