tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Gainty <>
Subject RE: environment variables for hostname and context name
Date Sat, 19 Sep 2009 02:01:19 GMT

org.apache.jasper.JasperException: /WEB-INF/jsp/login.jsp(17,2)

Unterminated &lt;core:if tag

at org.apache.jasper.compiler.DefaultErrorHandler.jspError(


this says that login.jsp at line 17 column2 has an unterminated if tag
here is a complete example that uses if component from Struts core e.g.
<s:if test="#groupStatus.odd == true ">odd</s:if>

<!-- assuming you have this taglib declaration -->
<%@ taglib prefix="s" uri="/struts-tags"%>

<title>test For Bharaat</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
  <tr class="trheadermain" align="center" bgcolor="#990000" height="17">
    <td colspan="4" align="center" height="17" width="100%"></td>
  <tr bgcolor="#990000" height="17">
    <td class="trheadermain" colspan="2" align="center" height="17" width="33%"><b>NAME</b></td>
    <td class="trheadermain" width="33%"><b>Price</b></td>
    <td class="trheadermain" width="33%"><b>Original Value</b></td>
    <td><!-- construct an iterator which will iterate thru a Entries list supplied
by simple.GetEntryAction --> <webwork:iterator value="simple.GetEntryAction" status="groupStatus">
<s:iterator value="groupDao.groups" status="groupStatus">
     <tr class="<s:if test="#groupStatus.odd == true ">odd</s:if><s:else>even</s:else>">

Martin Gainty 
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten
wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist
unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet
keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen
wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire
prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe
quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information
seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les
email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune
responsabilité pour le contenu fourni.

> Date: Fri, 18 Sep 2009 17:18:08 -0700
> Subject: environment variables for hostname and context name
> From:
> To:
> I'm reconfiguring the logging for my tomcat installation (6.0.20) to
> use logback (instead of log4j) for the server logging so I can split
> out error messages on a per host basis. I see that "catalina.home" is
> exposed as an environment var and usable in the logging configuration
> file - what about the hostname and context name/path?
> I would like to set up a config file such that I don't have to edit it
> every time I add a new sandbox for a developer (host). I want the
> errors split out per host instead of one big file, because it makes it
> possible to tell which sandbox had a problem with a JSP page for
> instance.
> I have it working if I hardcode a new appender per host going to a
> separate file - something like :
>   <root level="INFO">
>     <appender-ref ref="tomcat" />
>   </root>
>   <logger name="org.apache.catalina.core.ContainerBase.[Catalina].[]"
>           level="INFO"
>           additivity="false">
>     <appender-ref ref="tomcat_www" />
>   </logger>
> and then two appenders, one for base logging from the tomcat
> container, and then one for the host "".
>   <appender name="tomcat_www"
> class="ch.qos.logback.core.rolling.RollingFileAppender">
>     <File>${catalina.home}/logs/tomcat-www.log</File>
>     <RollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
>       <FileNamePattern>${catalina.home}/logs/tomcat-www.%d{yyyy-MM-dd}.log.gz</FileNamePattern>
>     </RollingPolicy>
>     <layout class="ch.qos.logback.classic.PatternLayout">
>       <Pattern>%-25(%date{HH:mm:ss.SSS} [%thread])
> %-5level%n%logger%n%msg%n</Pattern>
>     </layout>
>   </appender>
> Now when I log an error I see something like :
> 17:04:01.890 [http-8080-1] ERROR
> org.apache.catalina.core.ContainerBase.[Catalina].[].[/foo].[default]
> Servlet.service() for servlet default threw exception
> org.apache.jasper.JasperException: /WEB-INF/jsp/login.jsp(17,2)
> Unterminated &lt;core:if tag
>         at org.apache.jasper.compiler.DefaultErrorHandler.jspError(
> [jasper.jar:na]
> [blah blah blah]
> "" is the host where the web app is deployed. "foo" is the
> context path under which the app is deployed. So if it was able to log
> this information, it must be accessible somewhere, right? If I can get
> access to the hostname and context name I can specify a dynamic file
> name using these variables, and then only have one appender defined no
> matter how many new hosts I deploy.
> Chris
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

Your E-mail and More On-the-Go. Get Windows Live Hotmail Free.
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message