You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Cedric Dumoulin <ce...@lifl.fr> on 2001/04/24 11:26:27 UTC

Re: Error while overriding parameters in instances - components over struts

  Hi,

  There is no problem with components, just a syntax error in your jsp
overiding parameter : you have ended <comp:insert ...> tag while you still
using it. Remove the '/', and all will work fine.
  I agree that returned error is not accurate : I think that jsp preprocessor
should detect the end tag </comp:insert> with no corresponding starting tag, or
maybe I miss something.

    Cedric

<%@ taglib uri="/WEB-INF/components.tld" prefix="comp" %>

<comp:insert instance="classicPage" flush="true" />
 ------------------------------------------------^----- ERROR : remove the '/'
!
<comp:put name="body" value="mainPageBody.jsp" />
</comp:insert>

P.S. : May I advice you to use <comp:insert ...> instead of the deprecated
<comp:include ...> in your layout page ?

Vijaya Narasimha wrote:

> Hi,
>
> I am using components over struts on iAS v 6.0 sp2. I am getting a null
> pointer exception error while overriding a parameter in an instance. If I
> don't override and use the instance as is everything work fine. Did anyone
> else get this error? Thanks for any help/leads.
>
> Vijay
>
> This is my instance definition in componentInstances.xml
>
>   <!-- Instance description  -->
>   <instance name="classicPage" path="/layout/ddtsClassicLayout.jsp">
>           <put name="title"  value="The DDTS Application" />
>           <put name="header" value="/common/header.jsp" />
>           <put name="footer" value="/common/footer.jsp" />
>           <put name="navigation" value="/common/navigation.jsp" />
>           <put name="body"   value="/startPageBody.jsp" />
>   </instance>
>
> And this is how I am overiding the body parameter.
>
> <%@ taglib uri="/WEB-INF/components.tld" prefix="comp" %>
>
> <comp:insert instance="classicPage" flush="true" />
> <comp:put name="body" value="mainPageBody.jsp" />
> </comp:insert>
>
> And this is the layout page
>
> <%@ page language="java" %>
> <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
> <%@ taglib uri="/WEB-INF/components.tld" prefix="comp" %>
>
> <%-- Layout component
>   parameters : title, header, menu, body, footer
> --%>
>
> <html:html locale="<%= true %>">
> <head>
>     <link rel=stylesheet
> href="<%=request.getContextPath()%>/layout/stylesheet.css" type="text/css">
>     <title><comp:getAttribute name="title"/></title>
> <html:base/>
> </head>
>
> <body bgcolor="#ffffff" text="#000000" link="#023264" alink="#023264"
> vlink="#023264">
>
> <logic:notPresent name="org.apache.struts.action.MESSAGE"
> scope="application">
>   <font color="red">
>     ERROR:  Application resources not loaded -- check servlet container
>     logs for error messages.
>   </font>
> </logic:notPresent>
>
> <table border="0" width="100%" cellspacing="1"  CELLPADDING="0" HSPACE="0"
> VSPACE="0">
> <tr>
>   <td colspan="2"><comp:include attribute="header" /></td>
> </tr>
> <tr>
>   <td width="120" valign="top">
>     <comp:include attribute='navigation'/>
>   </td>
>   <td valign="top"  align="left">
>     <comp:include attribute='body' />
>   </td>
> </tr>
> <tr>
>   <td colspan="2">
>     <hr>
>   </td>
> </tr>
> <tr>
>   <td colspan="2">
>     <comp:include attribute="footer" />
>   </td>
> </tr>
> </table>
> </body>
> </html:html>
>
> This is the nullpointer error log
>
>  session GXLiteSessionID-7637684474562691762
> [23/Apr/2001 18:25:49:4] info: --------------------------------------
> [23/Apr/2001 18:25:50:8] info: --------------------------------------
> [23/Apr/2001 18:25:51:0] info: jsp.APPS.ddts.mainPageContainer: init
> [23/Apr/2001 18:25:51:2] info: --------------------------------------
> java.lang.NullPointerException
>         at
> s1.struts.taglib.component.PutAttributeTag.putValueInTagParent(PutAtt
> ributeTag.java:342)
>         at
> s1.struts.taglib.component.PutAttributeTag.doEndTag(PutAttributeTag.j
> ava:327)
>         at
> jsp.APPS.ddts.mainPageContainer._jspService(mainPageContainer.java:79
> )
>         at
> jsp.APPS.ddts.mainPageContainer.service(mainPageContainer.java:35)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
>         at
> com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
>  Source)
>         at
> com.netscape.server.servlet.servletrunner.ServletRunner.callJSP(Unkno
> wn Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callJspCompiler(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callUri(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callUriRestrictOutput(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformRequestDispatcher.fo
> rward(Unknown Source)
>         at
> s1.struts.component.ActionComponentServlet.processForward(ActionCompo
> nentServlet.java:217)
>         at
> s1.struts.component.ActionComponentServlet.processActionForward(Actio
> nComponentServlet.java:93)
>         at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:156
> 4)
>         at
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
>
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
>         at
> com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
>  Source)
>         at
> com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unkno
> wn Source)
>         at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
>         at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
>         at com.kivasoft.thread.ThreadBasic.run(Native Method)
>         at java.lang.Thread.run(Thread.java:479)
> java.lang.NullPointerException
>         at
> s1.struts.taglib.component.PutAttributeTag.putValueInTagParent(PutAtt
> ributeTag.java:342)
>         at
> s1.struts.taglib.component.PutAttributeTag.doEndTag(PutAttributeTag.j
> ava:327)
>         at
> jsp.APPS.ddts.mainPageContainer._jspService(mainPageContainer.java:79
> )
>         at
> jsp.APPS.ddts.mainPageContainer.service(mainPageContainer.java:35)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
>         at
> com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
>  Source)
>         at
> com.netscape.server.servlet.servletrunner.ServletRunner.callJSP(Unkno
> wn Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callJspCompiler(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callUri(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformHttpServletResponse.
> callUriRestrictOutput(Unknown Source)
>         at
> com.netscape.server.servlet.platformhttp.PlatformRequestDispatcher.fo
> rward(Unknown Source)
>         at
> s1.struts.component.ActionComponentServlet.processForward(ActionCompo
> nentServlet.java:217)
>         at
> s1.struts.component.ActionComponentServlet.processActionForward(Actio
> nComponentServlet.java:93)
>         at
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:156
> 4)
>         at
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:509)
>
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
>         at
> com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
>  Source)
>         at
> com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unkno
> wn Source)
>         at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
>         at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
>         at com.kivasoft.thread.ThreadBasic.run(Native Method)
>         at java.lang.Thread.run(Thread.java:479)