You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by James Lampert <ja...@touchtonecorp.com> on 2012/06/18 18:10:44 UTC
Tomcat not starting properly on a customer's AS/400, and I have no
idea why. Help?
We're attempting to bring up apache-tomcat-7.0.25.zip on a customer's
AS/400, the same as we've done on several other AS/400s (including our
own), and it's not working.
In catalina.out, I'm seeing this:
> Jun 18, 2012 11:36:23 AM org.apache.catalina.core.AprLifecycleListener init
> INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /QSYS.LIB/QSHELL.LIB:/QSYS.LIB/LTL38.LIB:/QSYS.LIB/ERBLIB.LIB:/QSYS.LIB/ERBQGPL.LIB:/QSYS.LIB/SEQUEL.LIB:/QSYS.LIB/SEQUELWI.LIB:/QSYS.LIB/SEQUELEX.LIB:/QSYS.LIB/ESEND.LIB:/QSYS.LIB/QTEMP.LIB:/QSYS.LIB/QGPL.LIB:/QSYS.LIB/QRPG.LIB:/QSYS.LIB/QIDU.LIB:/QSYS.LIB/TAATOOL.LIB:/QSYS.LIB/ALKWIN.LIB:/QSYS.LIB/OMNISITE.LIB:/QSYS.LIB/OMNIFIXES.LIB:/QSYS.LIB/OMNITRACS.LIB:/QSYS.LIB/OMNIDATA.LIB:/QSYS.LIB/OMNINATL.LIB:/QSYS.LIB/LIBEXPAT.LIB:/QSYS.LIB/LIBFTP.LIB:/QSYS.LIB/ACCLIB.LIB
> Jun 18, 2012 11:36:26 AM org.apache.coyote.AbstractProtocol init
> INFO: Initializing ProtocolHandler ["http-bio-1093"]
> Jun 18, 2012 11:36:26 AM org.apache.coyote.AbstractProtocol init
> INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
> Jun 18, 2012 11:36:26 AM org.apache.catalina.startup.Catalina load
> INFO: Initialization processed in 3280 ms
> Jun 18, 2012 11:36:26 AM org.apache.catalina.core.StandardService startInternal
> INFO: Starting service Catalina
> Jun 18, 2012 11:36:26 AM org.apache.catalina.core.StandardEngine startInternal
> INFO: Starting Servlet Engine: Apache Tomcat/7.0.25
> Jun 18, 2012 11:36:26 AM org.apache.catalina.startup.HostConfig deployDirectory
> INFO: Deploying web application directory /wintouch/tomcat/webapps/ROOT
> Jun 18, 2012 11:36:27 AM org.apache.catalina.core.ContainerBase addChildInternal
> SEVERE: ContainerBase.addChild: start:
> org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
> at java.lang.Throwable.<init>(Throwable.java:218)
> at java.lang.Throwable.<init>(Throwable.java:218)
> at java.lang.Exception.<init>(Exception.java:59)
> at org.apache.catalina.LifecycleException.<init>(LifecycleException.java:74)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:897)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.ArrayStoreException
> at java.lang.Throwable.<init>(Throwable.java:181)
> at java.lang.Exception.<init>(Exception.java:29)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.ArrayStoreException.<init>(ArrayStoreException.java:29)
> at java.util.Arrays.copyOf(Arrays.java:2883)
> at java.lang.StringCoding.encode(StringCoding.java:277)
> at java.lang.String.getBytes(String.java:1691)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:254)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:231)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:216)
> at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3206)
> at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3183)
> at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1302)
> at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1255)
> at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)
> at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)
> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> ... 11 more
> Jun 18, 2012 11:36:27 AM org.apache.catalina.startup.HostConfig deployDirectory
> SEVERE: Error deploying web application directory /wintouch/tomcat/webapps/ROOT
> java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]
> at java.lang.Throwable.<init>(Throwable.java:196)
> at java.lang.Exception.<init>(Exception.java:41)
> at java.lang.RuntimeException.<init>(RuntimeException.java:43)
> at java.lang.IllegalStateException.<init>(IllegalStateException.java:38)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:900)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Jun 18, 2012 11:36:27 AM org.apache.catalina.startup.HostConfig deployDirectory
> INFO: Deploying web application directory /wintouch/tomcat/webapps/docs
> Jun 18, 2012 11:36:27 AM org.apache.catalina.core.ContainerBase addChildInternal
> SEVERE: ContainerBase.addChild: start:
> org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs]]
> at java.lang.Throwable.<init>(Throwable.java:218)
> at java.lang.Exception.<init>(Exception.java:59)
> at org.apache.catalina.LifecycleException.<init>(LifecycleException.java:74)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:897)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.ArrayStoreException
> at java.lang.Throwable.<init>(Throwable.java:181)
> at java.lang.Exception.<init>(Exception.java:29)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.ArrayStoreException.<init>(ArrayStoreException.java:29)
> at java.util.Arrays.copyOf(Arrays.java:2883)
> at java.lang.StringCoding.encode(StringCoding.java:277)
> at java.lang.String.getBytes(String.java:1691)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:254)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:231)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:216)
> at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3206)
> at org.apache.catalina.core.StandardContext.addServletMapping(StandardContext.java:3183)
> at org.apache.catalina.deploy.WebXml.configureContext(WebXml.java:1302)
> at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1255)
> at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)
> at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)
> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> ... 11 more
> Jun 18, 2012 11:36:27 AM org.apache.catalina.startup.HostConfig deployDirectory
> SEVERE: Error deploying web application directory /wintouch/tomcat/webapps/docs
> java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs]]
> at java.lang.Throwable.<init>(Throwable.java:196)
> at java.lang.Exception.<init>(Exception.java:41)
> at java.lang.RuntimeException.<init>(RuntimeException.java:43)
> at java.lang.IllegalStateException.<init>(IllegalStateException.java:38)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:900)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Jun 18, 2012 11:36:27 AM org.apache.catalina.startup.HostConfig deployDirectory
> INFO: Deploying web application directory /wintouch/tomcat/webapps/examples
> Jun 18, 2012 11:36:27 AM org.apache.tomcat.util.digester.Digester endElement
> SEVERE: End event threw exception
> java.lang.reflect.InvocationTargetException
> at java.lang.Throwable.<init>(Throwable.java:241)
> at java.lang.Exception.<init>(Exception.java:77)
> at java.lang.reflect.InvocationTargetException.<init>(InvocationTargetException.java:54)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:575)
> at org.apache.tomcat.util.IntrospectionUtils.callMethodN(IntrospectionUtils.java:895)
> at org.apache.tomcat.util.IntrospectionUtils.callMethodN(IntrospectionUtils.java:895)
> at org.apache.tomcat.util.digester.CallMethodRule.end(CallMethodRule.java:426)
> at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:987)
> at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:592)
> at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1726)
> at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2677)
> at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
> at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:449)
> at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
> at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
> at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
> at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
> at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
> at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1537)
> at org.apache.catalina.startup.ContextConfig.parseWebXml(ContextConfig.java:1765)
> at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1171)
> at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:825)
> at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:300)
> at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
> at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
> at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5161)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:897)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:873)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1095)
> at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1617)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.ArrayStoreException
> at java.lang.Throwable.<init>(Throwable.java:181)
> at java.lang.Exception.<init>(Exception.java:29)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.ArrayStoreException.<init>(ArrayStoreException.java:29)
> at java.util.Arrays.copyOf(Arrays.java:2883)
> at java.lang.StringCoding.encode(StringCoding.java:277)
> at java.lang.String.getBytes(String.java:1691)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:254)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:231)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:216)
> at org.apache.catalina.deploy.SecurityCollection.addPattern(SecurityCollection.java:229)
> ... 36 more
> Jun 18, 2012 11:36:27 AM org.apache.catalina.startup.ContextConfig parseWebXml
> SEVERE: Parse error in application web.xml file at jndi:/localhost/examples/WEB-INF/web.xml
> java.lang.ArrayStoreException
> at java.lang.Throwable.<init>(Throwable.java:196)
> at java.lang.Exception.<init>(Exception.java:41)
> at org.xml.sax.SAXException.<init>(SAXException.java:88)
> at org.xml.sax.SAXParseException.<init>(SAXParseException.java:85)
> at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2687)
> at org.apache.tomcat.util.digester.Digester.createSAXException(Digester.java:2707)
. . . and a lot more in the same general vein.
I know it's trying to tell me *something*, but I don't know enough about
Tomcat to know *what* it's trying to tell me.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by James Lampert <ja...@touchtonecorp.com>.
>>> /QSYS.LIB/QSHELL.LIB:/QSYS.LIB/LTL38.LIB:/QSYS.LIB/ERBLIB.LIB:/QSYS.LIB/ERBQGPL.LIB:/QSYS.LIB/SEQUEL.LIB:/QSYS.LIB/SEQUELWI.LIB:/QSYS.LIB/SEQUELEX.LIB:/QSYS.LIB/ESEND.LIB:/QSYS.LIB/QTEMP.LIB:/QSYS.LIB/QGPL.LIB:/QSYS.LIB/QRPG.LIB:/QSYS.LIB/QIDU.LIB:/QSYS.LIB/TAATOOL.LIB:/QSYS.LIB/ALKWIN.LIB:/QSYS.LIB/OMNISITE.LIB:/QSYS.LIB/OMNIFIXES.LIB:/QSYS.LIB/OMNITRACS.LIB:/QSYS.LIB/OMNIDATA.LIB:/QSYS.LIB/OMNINATL.LIB:/QSYS.LIB/LIBEXPAT.LIB:/QSYS.LIB/LIBFTP.LIB:/QSYS.LIB/ACCLIB.LIB
Konstantin Kolinko wrote:
> Just guessing at straws: you may try to simplify your environment (do
> you need all that libraries as mentioned in java.library.path? what
> is your default charset?)
Hmm. This is interesting. The value shown for java.library.path seems to
be the "product" and "user" portions of the job's library list (an
AS/400-specific concept analogous to the "path" in DOS, WinDoze, or
Linux, or to a Java classpath) at the time the job was launched.
Comparing the same message on our own AS/400, I see
> QSYS.LIB:/QSYS.LIB/QSYS2.LIB:/QSYS.LIB/QHLPSYS.LIB:/QSYS.LIB/QUSRSYS.LIB:/QSYS.LIB/QSHELL.LIB:/QSYS.LIB/WTI1###.LIB:/QSYS.LIB/WINTOUCH.LIB:/QSYS.LIB/QGPL.LIB:/QSYS.LIB/QTEMP.LIB:/QSYS.LIB/AQUESTVIEW.LIB:/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre/lib/ppc:/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre/lib/ppc/classic:/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre/lib/ppc/default
which is the "system," "product," and "user" portions of the job's
library list, followed by three Java-related directories in the
integrated file system.
I just tried shutting down Tomcat, removing most of the contents of the
library list, and restarting it. No change, and I did a bit of digging:
it seems that a system setting on the problem box appears to be causing
jobs to be submitted with the default "user" portion of the library
list, rather than that of the submitting job. Interesting. This calls
for further study.
--
JHHL
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by James Lampert <ja...@touchtonecorp.com>.
> # Java 6 settings if needed
> export -s JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre
> export -s CATALINA_HOME=/wintouch/tomcat
> export -s JAVA_OPTS="-Dos400.awt.native=true -Djava.awt.headless=true -Djava.version=1.6 -Xms256m -Xmx512m"
I just tried moving them out of bin/catalina.sh and into bin/setenv.sh
on our production AS/400, and restarted Tomcat, and everything continues
to work just fine.
Thanks to both who gave me the answer, and especially thanks for not
screaming at me for mucking about in catalina.sh without knowing what
I'm doing.
--
JHHL
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
RE: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by "Hedrick, Brooke - 43" <br...@rainhail.com>.
> -----Original Message-----
> From: James Lampert [mailto:jamesl@touchtonecorp.com]
> Sent: Monday, June 18, 2012 4:03 PM
> To: Tomcat Users List
> Subject: Re: Tomcat not starting properly on a customer's AS/400, and I have
> no idea why. Help?
>
> Found the problem:
>
> The lines
> > # Java 6 settings if needed
> > export -s
> JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre
> > export -s CATALINA_HOME=/wintouch/tomcat
> > export -s JAVA_OPTS="-Dos400.awt.native=true -Djava.awt.headless=true
> -Djava.version=1.6 -Xms256m -Xmx512m"
> (which have been necessary in every AS/400 Tomcat installation I've
> participated in) were missing.
>
> I've been told that there is a more elegant place to put them than in
> catalina.sh, but I can't remember *where* I was told to put them, and if just
> sticking them in catalina.sh is considered a bad practice, I'd like very much to
> switch to the preferred place for these lines.
>
On linux I use <CATALINA_BASE>/bin/setenv.sh
> --
> JHHL
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by James Lampert <ja...@touchtonecorp.com>.
Mark Thomas wrote:
> On 18/06/2012 22:02, James Lampert wrote:
>> Found the problem:
>>
>> The lines
>>> # Java 6 settings if
>>> needed
>>> export -s
>>> JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre
>>> export -s
>>> CATALINA_HOME=/wintouch/tomcat
>>> export -s JAVA_OPTS="-Dos400.awt.native=true -Djava.awt.headless=true
>>> -Djava.version=1.6 -Xms256m -Xmx512m"
>> (which have been necessary in every AS/400 Tomcat installation I've
>> participated in) were missing.
>>
>> I've been told that there is a more elegant place to put them than in
>> catalina.sh, but I can't remember *where* I was told to put them, and if
>> just sticking them in catalina.sh is considered a bad practice, I'd like
>> very much to switch to the preferred place for these lines.
>
> Create setenv.sh and put them in there.
Thanks. I'll try it shortly.
--
JHHL
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by Mark Thomas <ma...@apache.org>.
On 18/06/2012 22:02, James Lampert wrote:
> Found the problem:
>
> The lines
>> # Java 6 settings if
>> needed
>> export -s
>> JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre
>> export -s
>> CATALINA_HOME=/wintouch/tomcat
>> export -s JAVA_OPTS="-Dos400.awt.native=true -Djava.awt.headless=true
>> -Djava.version=1.6 -Xms256m -Xmx512m"
> (which have been necessary in every AS/400 Tomcat installation I've
> participated in) were missing.
>
> I've been told that there is a more elegant place to put them than in
> catalina.sh, but I can't remember *where* I was told to put them, and if
> just sticking them in catalina.sh is considered a bad practice, I'd like
> very much to switch to the preferred place for these lines.
Create setenv.sh and put them in there.
Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by James Lampert <ja...@touchtonecorp.com>.
Found the problem:
The lines
> # Java 6 settings if needed
> export -s JAVA_HOME=/QOpenSys/QIBM/ProdData/JavaVM/jdk60/32bit/jre
> export -s CATALINA_HOME=/wintouch/tomcat
> export -s JAVA_OPTS="-Dos400.awt.native=true -Djava.awt.headless=true -Djava.version=1.6 -Xms256m -Xmx512m"
(which have been necessary in every AS/400 Tomcat installation I've
participated in) were missing.
I've been told that there is a more elegant place to put them than in
catalina.sh, but I can't remember *where* I was told to put them, and if
just sticking them in catalina.sh is considered a bad practice, I'd like
very much to switch to the preferred place for these lines.
--
JHHL
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
Re: Tomcat not starting properly on a customer's AS/400, and I have
no idea why. Help?
Posted by Konstantin Kolinko <kn...@gmail.com>.
2012/6/18 James Lampert <ja...@touchtonecorp.com>:
> We're attempting to bring up apache-tomcat-7.0.25.zip on a customer's
> AS/400, the same as we've done on several other AS/400s (including our own),
> and it's not working.
>
> In catalina.out, I'm seeing this:
>
>> Jun 18, 2012 11:36:23 AM org.apache.catalina.core.AprLifecycleListener
>> init INFO: The APR
>> based Apache Tomcat Native library which allows optimal performance in
>> production environments was not found on the java.library.path:
>> /QSYS.LIB/QSHELL.LIB:/QSYS.LIB/LTL38.LIB:/QSYS.LIB/ERBLIB.LIB:/QSYS.LIB/ERBQGPL.LIB:/QSYS.LIB/SEQUEL.LIB:/QSYS.LIB/SEQUELWI.LIB:/QSYS.LIB/SEQUELEX.LIB:/QSYS.LIB/ESEND.LIB:/QSYS.LIB/QTEMP.LIB:/QSYS.LIB/QGPL.LIB:/QSYS.LIB/QRPG.LIB:/QSYS.LIB/QIDU.LIB:/QSYS.LIB/TAATOOL.LIB:/QSYS.LIB/ALKWIN.LIB:/QSYS.LIB/OMNISITE.LIB:/QSYS.LIB/OMNIFIXES.LIB:/QSYS.LIB/OMNITRACS.LIB:/QSYS.LIB/OMNIDATA.LIB:/QSYS.LIB/OMNINATL.LIB:/QSYS.LIB/LIBEXPAT.LIB:/QSYS.LIB/LIBFTP.LIB:/QSYS.LIB/ACCLIB.LIB
[[[
> Caused by: java.lang.ArrayStoreException
> at java.lang.Throwable.<init>(Throwable.java:181)
> at java.lang.Exception.<init>(Exception.java:29)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.RuntimeException.<init>(RuntimeException.java:32)
> at java.lang.ArrayStoreException.<init>(ArrayStoreException.java:29)
> at java.util.Arrays.copyOf(Arrays.java:2883)
> at java.lang.StringCoding.encode(StringCoding.java:277)
> at java.lang.String.getBytes(String.java:1691)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:254)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:231)
> at org.apache.catalina.util.RequestUtil.URLDecode(RequestUtil.java:216)
> at org.apache.catalina.deploy.SecurityCollection.addPattern(SecurityCollection.java:229) ]]]
The exception that I cited from your log fragment is just crazy.
The code in RequestUtil.URLDecode(RequestUtil.java:254) in 7.0.25 is:
bytes = str.getBytes(Charset.defaultCharset());
The String.getBytes(Charset) call, where all parameters are standard
classes, provided by JRE. Yet this standard method fails in a crazy
way ("java.lang.ArrayStoreException". It means types mismatch
encountered when putting a new element into array).
Your JRE is broken.
Try running a simple java program that calls the above method and see
what happens.
Just guessing at straws: you may try to simplify your environment (do
you need all that libraries as mentioned in java.library.path? what
is your default charset?)
I wonder whether you have several copies of JRE classes loaded by
different classloaders.
Best regards,
Konstantin Kolinko
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org