getBytes() with no arguments is very bad. USS or no USS, it should be a bugzilla.
-----Original Message----- From: Rich Taylor [mailto:[EMAIL PROTECTED] Sent: Friday, December 03, 2004 2:56 PM To: [EMAIL PROTECTED] Subject: Tomcat 5.0.x on USS / EBCDIC Hello Everyone, Feel free to slam me if this should go to the users list, I felt it should go to the dev list as it pertains to Tomcat src. I've been working on getting Tomcat 5.0.30 going on z/OS / USS (EBCDIC) (one of our supported platforms as a user / bundler of Tomcat). We've been running Tomcat 4.0.4 after some minor fixes in it for a year or two now and are looking at upgrading. I've had some luck with 5.0.30 but haven't been able to get very far. The sample web apps don't come up (404 Not Found) and when I try to view the Status page I get a blank white screen and the following (bottom of email) error shows up in the logs. It appears this issue is on line 169 of BaseAuthenitcator.java: String unencoded = new String(Base64.decode(authorization.getBytes())); On systems with different encodings, the byte array that is returned from String.getBytes() will be different depending on the native encoding. But you probably already knew that. So I suppose my question is whether or not USS on z/OS is a supported platform for Tomcat. I read on the "Tomcat on Other Operating Systems" page that JZOS is the suggested way to get Tomcat running on z/OS, but I did see posting from people hinting some success in getting Tomcat to run without it (still hoping to hear back from them). We may have a tough time "selling" (not literally) JZOS as a requirement to our users for various reasons so I'm exploring running without it. If it comes down to it we may need to have someone go through the Tomcat 5.0.x src to try and fix any encoding issues, but that isn't likely yet. If it happens, all changes would be submitted. But if EBCDIC and other such odd environments are not meant to be supported out of the box and never will be, then that time may be better spent adding an additional requirement to our product in the USS environment (assuming JZOS covers all encoding issues). We really appreciate the work you do, the community is fortunate to have you around. Thanks, Rich Taylor Error in catalina.out when trying to access status page on USS: [INFO] Http11Protocol - Initializing Coyote HTTP/1.1 on http-8080 [INFO] Catalina - Initialization processed in 12285 ms [INFO] StandardService - Starting service Catalina [INFO] StandardEngine - Starting Servlet Engine: Apache Tomcat/5.0.30 [INFO] StandardHost - XML validation disabled [INFO] StandardHost - Create Host deployer for direct deployment ( non-jmx ) [INFO] StandardHostDeployer - Processing Context configuration file URL file:/atmu/uhttp2/jakarta-tomcat-5.0.30/conf/Catalina/localhost/admin.xm l [INFO] StandardHostDeployer - Processing Context configuration file URL file:/atmu/uhttp2/jakarta-tomcat-5.0.30/conf/Catalina/localhost/balancer .xml [INFO] StandardHostDeployer - Processing Context configuration file URL file:/atmu/uhttp2/jakarta-tomcat-5.0.30/conf/Catalina/localhost/manager. xml [INFO] StandardHostDeployer - Installing web application at context path /tomcat-docs from URL file:/atmu/uhttp2/jakarta-tomcat-5.0.30/webapps/tomcat-docs [INFO] StandardHostDeployer - Installing web application at context path from URL file:/atmu/uhttp2/jakarta-tomcat-5.0.30/webapps/ROOT [INFO] Http11Protocol - Starting Coyote HTTP/1.1 on http-8080 [INFO] ChannelSocket - JK2: ajp13 listening on /0.0.0.0:8009 [INFO] JkMain - Jk running ID=0 time=16/91 config=/atmu/uhttp2/jakarta-tomcat-5.0.30/conf/jk2.properties [INFO] Catalina - Server startup in 26728 ms [ERROR] CoyoteAdapter - An exception or error occurred in the container during the request processing <java.lang.ArrayIndexOutOfBoundsException>java.lang.ArrayIndexOutOfBound sException at org.apache.catalina.util.Base64.decode(Base64.java:241) at org.apache.catalina.authenticator.BasicAuthenticator.parseUsername(Basic Authenticator.java:169) at org.apache.catalina.authenticator.BasicAuthenticator.authenticate(BasicA uthenticator.java:127) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:504) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 20) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :137) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:104) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :118) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:102) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 20) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:109) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveCo ntext.java:104) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:5 20) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:79 9) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC onnection(Http11Protocol.java:705) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:57 7) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:684) at java.lang.Thread.run(Thread.java:512) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]