Bem, eu estava desenvolvendo um sistema normalmente, tudo funcionando direitinho, daí resolvi acrescentar uma tag lib ao struts e pronto! tudo deu errado, já retirei a tag e os erros continuam, já reinstalei o tomcat, já refiz o projeto no eclipse e nada!!!
vamos ao primeiro erro: quando eu inicio o tomcat dá esse erro:
27/01/2009 10:33:33 org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jre6\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Arquivos de programas/Java/jre6/bin/client;C:/Arquivos de programas/Java/jre6/bin;C:\Arquivos de programas\Borland\Delphi5\Bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\MSSQL7\BINN;C:\Arquivos de programas\Microsoft SQL Server\80\Tools\Binn;C:\Arquivos de programas\Microsoft SQL Server\90\Tools\binn;C:\Arquivos de programas\Microsoft SQL Server\90\DTS\Binn;C:\Arquivos de programas\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE;C:\Arquivos de programas\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies
27/01/2009 10:33:33 org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
27/01/2009 10:33:33 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 625 ms
27/01/2009 10:33:33 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
27/01/2009 10:33:33 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.17
27/01/2009 10:33:33 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
- Initializing, config=‘org.apache.struts.util.LocalStrings’, returnNull=true
- Initializing, config=‘org.apache.struts.action.ActionResources’, returnNull=true
- Parsing error processing resource path
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.apache.commons.digester.Digester.parse(Digester.java:1495)
at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1006)
at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432) - Marking servlet action as unavailable
- Servlet /producao threw load() exception
javax.servlet.UnavailableException: Parsing error processing resource path
at org.apache.struts.action.ActionServlet.handleConfigException(ActionServlet.java:1035)
at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1012)
at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470)
at javax.servlet.GenericServlet.init(GenericServlet.java:211)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:932)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3917)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4201)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:608)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:535)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:470)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
at org.apache.catalina.core.StandardService.start(StandardService.java:450)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
27/01/2009 10:33:55 org.apache.catalina.core.ApplicationContext log
INFO: org.apache.webapp.balancer.BalancerFilter: init(): ruleChain: [org.apache.webapp.balancer.RuleChain: [org.apache.webapp.balancer.rules.URLStringMatchRule: Target string: News / Redirect URL: http://www.cnn.com], [org.apache.webapp.balancer.rules.RequestParameterRule: Target param name: paramName / Target param value: paramValue / Redirect URL: http://www.yahoo.com], [org.apache.webapp.balancer.rules.AcceptEverythingRule: Redirect URL: http://jakarta.apache.org]]
27/01/2009 10:33:55 org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
27/01/2009 10:33:55 org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
27/01/2009 10:33:55 org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
27/01/2009 10:33:55 org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
27/01/2009 10:33:56 org.apache.coyote.http11.Http11BaseProtocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
27/01/2009 10:33:56 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
27/01/2009 10:33:56 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/63 config=null
27/01/2009 10:33:56 org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
27/01/2009 10:33:56 org.apache.catalina.startup.Catalina start
INFO: Server startup in 23376 ms
pois bem, não acho isso normal mas mesmo assim tentei entrar no sistema… ele entra na página de login (utilizo o realm do tomcat e validou a senha normalmente…) daí parece que agora ele não reconhece as tags do struts, pois a primeira página utiliza o <logic:redirect forward=“test”/> quando eu tiro essa linha e essa: <%@ taglib uri="/tags/struts-logic" prefix=“logic” %> daí ele entra no sistema normalmente…
alguém sabe o que pode ser???
aí vai meu struts-config.xml:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
“http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd”>
<struts-config>
<!--
================================================ Form Bean Definitions
-->
<form-beans>
<!--
sample form bean descriptor for an ActionForm <form-bean
name="inputForm" type="app.InputForm"/> end sample
-->
<!--
sample form bean descriptor for a DynaActionForm <form-bean
name="logonForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="username" type="java.lang.String"/>
<form-property name="password" type="java.lang.String"/> </form-bean>
end sample
-->
</form-beans>
<!--
========================================= Global Exception Definitions
-->
<global-exceptions>
<!--
sample exception handler <exception key="expired.password"
type="app.ExpiredPasswordException" path="/changePassword.jsp"/> end
sample
-->
</global-exceptions>
<!--
=========================================== Global Forward Definitions
-->
<global-forwards>
<forward name="index" path="/Index.do" />
<forward name="principal" path="/Principal.do" />
<forward name="inicio" path="/Inicio.do"/>
<forward name="RelatoriosDco" path="/RelatoriosDco.do" />
<forward name="BBRec" path="/BBRec.do" />
<forward name="dco" path="/DCO.do" />
<forward name="test" path="/test.do" />
</global-forwards>
<!--
=========================================== Action Mapping Definitions
-->
<action-mappings>
<!-- Acesso ao inicio para login -->
<action path="/Index" forward="/" />
<!-- Efetua login -->
<action path="/Principal" forward="/jsp/administracao/logon/efetuar-logon.jsp" />
<!-- Acesso à página inicial após login -->
<action path="/Inicio" forward="/index_inicio.jsp" />
<!-- Relatórios -->
<action path="/RelatoriosDco" forward="/jsp/cobranca/dco/relatorios/relatoriosdco.jsp" />
<!-- Relatórios -->
<action path="/BBRec" forward="/jsp/credito/bbrec/bbrec.jsp" />
<!-- DCO -->
<action path="/DCO" forward ="/jsp/cobranca/dco/dco.jsp" />
<action path="/test" forward ="/test.jsp" />
</action-mappings>
<!--
============================================= Controller Configuration
-->
<controller processorClass="org.apache.struts.tiles.TilesRequestProcessor" />
<!--
======================================== Message Resources Definitions
-->
<message-resources parameter="MessageResources" />
<!--
=============================================== Plug Ins Configuration
-->
<!--
======================================================= Tiles plugin
-->
<!--
This plugin initialize Tiles definition factory. This later can takes
some parameters explained here after. The plugin first read parameters
from web.xml, thenoverload them with parameters defined here. All
parameters are optional. The plugin should be declared in each
struts-config file. - definitions-config: (optional) Specify
configuration file names. There can be several comma separated file
names (default: ?? ) - moduleAware: (optional - struts1.1) Specify if
the Tiles definition factory is module aware. If true (default), there
will be one factory for each Struts module. If false, there will be
one common factory for all module. In this later case, it is still
needed to declare one plugin per module. The factory will be
initialized with parameters found in the first initialized plugin
(generally the one associated with the default module). true : One
factory per module. (default) false : one single shared factory for
all modules - definitions-parser-validate: (optional) Specify if xml
parser should validate the Tiles configuration file. true : validate.
DTD should be specified in file header (default) false : no validation
Paths found in Tiles definitions are relative to the main context.
-->
<plug-in className="org.apache.struts.tiles.TilesPlugin">
<!-- Path to XML definition file -->
<set-property property="definitions-config" value="/WEB-INF/tiles-defs.xml" />
<!-- Set Module-awareness to true -->
<set-property property="moduleAware" value="true" />
</plug-in>
<!--
=================================================== Validator plugin
-->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
</plug-in>
</struts-config>
meu web.xml do projeto:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN”
“http://java.sun.com/j2ee/dtds/web-app_2_2.dtd”>
<web-app>
<display-name>Projeto Produção</display-name>
<!-- Standard Action Servlet Configuration (with debugging) -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>application</param-name>
<param-value>ApplicationResources</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- The Usual Welcome File List -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>403</error-code>
<location>/jsp/acessoNegado.jsp</location>
</error-page>
<!-- Struts Tag Library Descriptors -->
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-logic.tld</taglib-location>
</taglib>
<!-- Segurança -->
<security-constraint>
<web-resource-collection>
<web-resource-name>ADMINISTRADOR</web-resource-name>
<url-pattern>/Inicio.do</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>ADM</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>TELA DE INDEX</web-resource-name>
<url-pattern>/index.jsp</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>ADM</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>tela de relatorios</web-resource-name>
<url-pattern>/RelatoriosDco.do</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>ADM</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>bbrec</web-resource-name>
<url-pattern>/BBRec.do</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>ADM</role-name>
</auth-constraint>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>sem controle</web-resource-name>
<url-pattern>*.jsp</url-pattern>
<url-pattern>/design/*</url-pattern>
<url-pattern>/util/*</url-pattern>
<url-pattern>/jsp/administracao/logon/*</url-pattern>
<url-pattern>/jsp/*</url-pattern>
</web-resource-collection>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/jsp/administracao/logon/efetuar-logon.jsp</form-login-page>
<form-error-page>/jsp/administracao/logon/efetuar-logon.jsp?erro=1</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>ADM</role-name>
</security-role>
</web-app>
o erro quando eu tento acessar a página é:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NullPointerException
org.apache.struts.util.RequestUtils.computeURL(RequestUtils.java:521)
org.apache.struts.util.RequestUtils.computeURL(RequestUtils.java:436)
org.apache.struts.util.RequestUtils.computeURL(RequestUtils.java:396)
org.apache.struts.taglib.logic.RedirectTag.doEndTag(RedirectTag.java:294)
org.apache.jsp.index_jsp._jspx_meth_logic_redirect_0(index_jsp.java:92)
org.apache.jsp.index_jsp._jspService(index_jsp.java:62)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.
alguém sabe alguma coisa sobre isso? pq eu já pesquisei de tudo e nao achei nada!!!
abraços