Tomcat + IIS

ArtiosFAE
30 de Noviembre del 2004
Tengo el siguiente problema:

he instalado el Tomcat 4.1.31 y con el IIS 5.1, y los he conectado a traves del plugin ISAPI (isapi_redirect.dll). Hasta ahi todo bien pues en el IIS el plugin aparece cargado de manera correcta. ahora les describo el error que me sale al tratar de acceder a los servlets de mi pagina.

HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

java.lang.NullPointerException
at freemarker.template.FileTemplateCache.startAutoUpdate(FileTemplateCache.java:385)
at estandar.MyHttpServlet.IniciaPath(MyHttpServlet.java:17)
at IndexPortal.ServletGestionPerfil.init(ServletGestionPerfil.java:24)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:888)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:621)
at org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:369)
at org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:169)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:300)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:374)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675)
at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)



--------------------------------------------------------------------------------

Apache Tomcat/4.1.31


Como ven es el tipico error 500 de Tomcat.

Aqui les describo como estan configurados los archivos:

[b]workers.properties[/b]

#------ OPTIONS ----------------------------------------

workers.tomcat_home=D:Tomcat
workers.java_home=C:j2sdk1.4.2_04
ps=

#------ ADVANCED MODE ----------------------------------
#------ DEFAULT worket list ----------------------------

worker.list=myworker

#------ DEFAULT ajp12 WORKER DEFINITION ----------------
#------ DEFAULT ajp13 WORKER DEFINITION ----------------
#------ myworker WORKER DEFINITION ---------------------

worker.myworker.port=8009
worker.myworker.host=localhost
worker.myworker.type=ajp13
worker.myworker.lbfactor=2.5
worker.myworker.cachesize=20
worker.myworker.cache_timeout=300
worker.myworker.recovery_options=0

#------ DEFAULT LOAD BALANCER WORKER DEFINITION --------

worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=myworker
worker.loadbalancer.lbfactor=2.5

#------ DEFAULT JNI WORKER DEFINITION-------------------
#------ CLASSPATH DEFINITION ---------------------------


[b]uriworkermap.properties[/b]

#
# Default worker to be used through our mappings
#
default.worker=myworker

#
# Sites to be redirected to Tomcat
#

/servlet/*=$(default.worker)

/examples/*.jsp=$(default.worker)
/examples/servlet/*=$(default.worker)

/web/*.jsp=$(default.worker)
/web/servlet/*=$(default.worker)

[b]server.xml[/b]

</Context>
- <Context path="/web" docBase="D:Tomcatwebappsmyapps" debug="0" reloadable="true">
<LogSetter name="tc-${yyyyMMdd}.log" path="logs/myapps-${yyyyMMdd}.log" />
<LogSetter name="servlet-${yyyyMMdd}.log" path="logs/servlet_myapps-${yyyyMMdd}.log" servletLogger="true" />
</Context>

[b]tomcat_iis_connector.reg[/b]

REGEDIT4
[HKEY_LOCAL_MACHINESOFTWAREApache Software FoundationJakarta Isapi Redirector1.0]
"extension_uri"="/jakarta/isapi_redirect.dll"
"log_file"="d:\Tomcat\logs\iis_redirect.log"
"log_level"="emerg"
"worker_file"="d:\Tomcat\conf\workers.properties"
"worker_mount_file"="d:\Tomcat\conf\uriworkermap.properties"

Ademas creee dos directorios virtuales dentro del IIS para que este se dedique a servir las paginas estaticas y el Tomcat se quede con los servlets.

El sitio esta en el directorio Inetpubweb y los servlets estan en Tomcatwebappsmyapps. El sitio lo carga super bien pero los servlets no. Me gustaria que alguien me dijera que es lo que pasa. De antemano gracias.