[jboss-jira] [JBoss JIRA] Commented: (JBAS-6268) Null pointer exception for misconfigured web.xml
Francisco Jose Diaz Navarro (JIRA)
jira-events at lists.jboss.org
Thu Jan 8 02:29:19 EST 2009
[ https://jira.jboss.org/jira/browse/JBAS-6268?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12445645#action_12445645 ]
Francisco Jose Diaz Navarro commented on JBAS-6268:
---------------------------------------------------
Hello. I get the same error when submitting a login form. However my web.xml seems to be well configured. Hope this would help.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app >
<context-param>
<param-name>steria.acceso.Aplicacion</param-name>
<param-value>INT</param-value>
</context-param>
<context-param>
<param-name>steria.acceso.Aplicacion.nombre</param-name>
<param-value>Portal Intranet SMS</param-value>
</context-param>
<context-param>
<param-name>steria.acceso.ControlAcceso</param-name>
<param-value>steria.acceso.ControlAccesoNulo</param-value>
</context-param>
<context-param>
<param-name>sms.portal.plantillaDefecto</param-name>
<param-value>index</param-value>
</context-param>
<context-param>
<param-name>sms.portal.publicador</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>sms.portal.consumidor.infoEntrada</param-name>
<param-value>
<![CDATA[
<br><br>
<img class="IconoImagen" src="/icons/house_link.gif" alt=""/>
<a href="${link}" target="_blank">Contenido original</a> en
<a href="${feedLink}" target="_blank">${feedTitle}</a>.<br><br>
]]>
</param-value>
</context-param>
<context-param>
<param-name>sms.portal.beans.AccesoMensajero</param-name>
<param-value>sms.portal.beans.AccesoMensajeroImpl</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.ac</param-name>
<param-value>configurarAplicaciones</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.ap</param-name>
<param-value>accionPendiente</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.pp</param-name>
<param-value>pasosAccionPendiente</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.bu</param-name>
<param-value>listadoBuscador</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.ca</param-name>
<param-value>contenidos</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.ed</param-name>
<param-value>contenidos</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.cn</param-name>
<param-value>vistaContenido</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.ev</param-name>
<param-value>listadoEventos</param-value>
</context-param>
<context-param>
<param-name>sms.portal.portlets.cuerpo.se</param-name>
<param-value>seccion</param-value>
</context-param>
<filter>
<filter-name>sesionesFilter</filter-name>
<filter-class>sms.portal.util.hibernate.SesionesFilter</filter-class>
</filter>
<filter>
<filter-name>informacionClienteFilter</filter-name>
<filter-class>sms.portal.filters.InformacionClienteFilter</filter-class>
</filter>
<filter>
<filter-name>controlAccesoFilter</filter-name>
<filter-class>sms.portal.acceso.ControlAccesoFilter</filter-class>
</filter>
<filter>
<filter-name></filter-name>
<filter-class>sms.portal.acceso.ControlAccesoFilter</filter-class>
</filter>
<filter>
<filter-name></filter-name>
<filter-class>sms.portal.filters.InformacionClienteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>sesionesFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>informacionClienteFilter</filter-name>
<url-pattern>/portal/solicitarPassword.pl/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>controlAccesoFilter</filter-name>
<url-pattern>/portal/solicitarPassword.pl/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>sms.portal.server.PortalContextBootstrap</listener-class>
</listener>
<!-- ActionServlet de Struts 1.1 -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>sms.portal.bridge.internal.PortalActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>validating</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>convertNull</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>portletInvokerServlet</servlet-name>
<servlet-class>sms.portal.server.spi.core.PortletInvokerServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>portalDriverServlet</servlet-name>
<servlet-class>sms.portal.server.PortalDriverServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet>
<servlet-name>loginServlet</servlet-name>
<servlet-class>sms.portal.server.LoginServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet>
<servlet-name>recursoServlet</servlet-name>
<servlet-class>sms.portal.server.RecursoServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet>
<servlet-name>generarFeedServlet</servlet-name>
<servlet-class>sms.portal.server.GenerarFeedServlet</servlet-class>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<display-name>DWR Servlet</display-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
</servlet>
<!-- ActionServlet mapping para el servlet de Struts 1.1 -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>portletInvokerServlet</servlet-name>
<url-pattern>/PlutoInvoker/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>portalDriverServlet</servlet-name>
<url-pattern>/portal/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>loginServlet</servlet-name>
<url-pattern>/login/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>recursoServlet</servlet-name>
<url-pattern>/res/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>generarFeedServlet</servlet-name>
<url-pattern>/rss/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
<!-- The Welcome File List -->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- Manejadores de excepciones de la aplicación -->
<!-- Descriptores de tags para Struts 1.1 -->
<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-nested.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>
<taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://jakarta.apache.org/taglibs/string-1.1</taglib-uri>
<taglib-location>/WEB-INF/taglibs-string.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://java.sun.com/portlet</taglib-uri>
<taglib-location>/WEB-INF/portlet.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://portals.apache.org/pluto/portlet-el</taglib-uri>
<taglib-location>/WEB-INF/portlet-el.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://portals.apache.org/pluto</taglib-uri>
<taglib-location>/WEB-INF/pluto.tld</taglib-location>
</taglib>
<!-- Referencia al DataSource de la aplicación -->
<resource-ref>
<res-ref-name>jdbc/intranet</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<res-ref-name>jdbc/acceso</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<res-ref-name>jcr/intranet</res-ref-name>
<res-type>javax.jcr.Repository</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!-- Proveedor SMTP de la aplicación -->
<resource-ref>
<res-ref-name>mail/carm</res-ref-name>
<res-type>javax.mail.Session</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<security-constraint>
<web-resource-collection>
<web-resource-name>INT</web-resource-name>
<url-pattern>/login</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>INT</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>SMS</realm-name>
<form-login-config>
<form-login-page>/login/do</form-login-page>
<form-error-page>/login</form-error-page>
</form-login-config>
</login-config>
<security-role>
<role-name>INT</role-name>
</security-role>
</web-app>
> Null pointer exception for misconfigured web.xml
> ------------------------------------------------
>
> Key: JBAS-6268
> URL: https://jira.jboss.org/jira/browse/JBAS-6268
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: JBossAS-5.0.0.CR2
> Environment: Linux
> Reporter: Daniel Taylor
> Assignee: Anil Saldhana
> Priority: Minor
> Fix For: JBossAS-5.0.1.CR1
>
>
> A misconfigured web.xml throws a null pointer exception:
> <welcome-file-list>
> <welcome-file>secure/main.html</welcome-file> <!-- missing a slash before 'secure', ie: /secure/main.html -->
> </welcome-file-list>
> throws exception:
> 10:20:00,977 ERROR [CoyoteAdapter] An exception or error occurred in the container during the request processing
> java.lang.NullPointerException
> at org.jboss.security.plugins.javaee.WebAuthorizationHelper.hasUserDataPermission(WebAuthorizationHelper.java:175)
> at org.jboss.web.tomcat.security.JBossWebRealm.hasUserDataPermission(JBossWebRealm.java:636)
> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:461)
> at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:91)
> at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:92)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:325)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828)
> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> at java.lang.Thread.run(Thread.java:619)
> while not crucial to the development of jboss, I speak from experience when I say that it can take a long time to find the configuration error based upon the exception thrown...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list