[arquillian-issues] [JBoss JIRA] Commented: (ARQ-604) Tomcat containers does not handle multiline javaVmArguments

Juraj Huska (JIRA) jira-events at lists.jboss.org
Tue Sep 20 11:52:26 EDT 2011


    [ https://issues.jboss.org/browse/ARQ-604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12629397#comment-12629397 ] 

Juraj Huska commented on ARQ-604:
---------------------------------

This issue was caused by incorrect JVM arguments parsing, in this part of code, in TomcatManagedContainer, method start:
{code}
if (ADDITIONAL_JAVA_OPTS != null) {
                
   for (String opt : ADDITIONAL_JAVA_OPTS.split(" ")) {
       cmd.add(opt);
   }
}
{code}

I have fixed this in this way:
{code}
if (ADDITIONAL_JAVA_OPTS != null) {
  for (String opt : ADDITIONAL_JAVA_OPTS.split(" ")) {

    if ( !(opt.trim()).isEmpty() ) {
	cmd.add(opt);
    }
  }
}
{code}

Now JVM arguments can be on multiple rows, but the list of the arguments has to be correctly divided. Each argument should be ended either by white space or new line. So one JVM argument can not be written on multiple lines. Is this valid constraint ? Should I send a pull request with this fix ? Thanks

> Tomcat containers does not handle multiline javaVmArguments
> -----------------------------------------------------------
>
>                 Key: ARQ-604
>                 URL: https://issues.jboss.org/browse/ARQ-604
>             Project: Arquillian
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Tomcat Containers
>    Affects Versions: tomcat_1.0.0.CR1
>            Reporter: Karel Piwko
>            Assignee: Juraj Huska
>             Fix For: tomcat_1.0.0.Final
>
>
> Suppose user passes:
> {code:xml}
>     <container qualifier="tomcat" default="true">
>         <configuration>
>         ...
>             <property name="javaVmArguments">-Xms512m -Xmx512m -XX:MaxPermSize=512m -Dorg.jboss.resolver.warning=true
>             -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dfile.encoding=UTF-8
>             -Djavax.servlet.request.encoding=UTF-8 </property>
>         ...
>         </configuration>
>     </container>
> {code}
> Than startup of the container would fail with:
> {code}
> Exception in thread "main" java.lang.NoClassDefFoundError: 
> Caused by: java.lang.ClassNotFoundException: 
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
> Could not find the main class: .  Program will exit.
> {code}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the arquillian-issues mailing list