Attribute HR_NTF_EMBEDDED_REGION with value JSP:/OA_HTML/OA.jsp?OAFunc=-&HR

Hi,
Env:
Oracle EBS :oracle11.5.10.2
Oracle DB :9.2.0.8
OS version :AIX 5.3
we are getting below error in HR self service
Attribute HR_NTF_EMBEDDED_REGION with value JSP:/OA_HTML/OA.jsp?OAFunc=-&HR_EMBEDDED_REGION-&NtfId=-&#NID- refers invalid framework URL.
How can i fix the issue?
Thanks

Hi;
It was working before? If yes what have been changed? Is there invalid object on your db? Is there any additional info at apache log?
Regard
Helios

Similar Messages

  • JBO-27011: Attribute set with value Y for Active in VscAdfUsers failed

    Hi All,
    I got the following exception when I committed the change of "Active" property in the User Management page.
    But when I change other properties, it works fine.
    And I didn't make any validators for the attribute "Active", why did I get such error?
    Any suggestions?
    Thanks!
    11/02/24 13:59:52 [13074] oracle.jbo.TxnValException: JBO-27023: Failed to validate all rows in a transaction.
         at oracle.jbo.server.DBTransactionImpl.validate(DBTransactionImpl.java:4051)
         at oracle.adf.model.bc4j.DCJboDataControl.validate(DCJboDataControl.java:1018)
         at oracle.adf.model.binding.DCBindingContainer.validateInputValues(DCBindingContainer.java:2918)
         at oracle.adf.model.binding.DCBindingContainer.validate(DCBindingContainer.java:2893)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.validateModelUpdates(PageLifecycleImpl.java:284)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$4.execute(Lifecycle.java:263)
         at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$3.after(ADFPhaseListener.java:350)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.vscadf.userinterface.util.AppSessionExpiry.doFilter(AppSessionExpiry.java:92)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    ## Detail 0 ##
    oracle.jbo.RowValException: JBO-27024: Failed to validate a row with key oracle.jbo.Key[1521 ] of type VscAdfUsers
         at oracle.jbo.server.EntityImpl.validate(EntityImpl.java:1600)
         at oracle.jbo.server.DBTransactionImpl.validate(DBTransactionImpl.java:4031)
         at oracle.adf.model.bc4j.DCJboDataControl.validate(DCJboDataControl.java:1018)
         at oracle.adf.model.binding.DCBindingContainer.validateInputValues(DCBindingContainer.java:2918)
         at oracle.adf.model.binding.DCBindingContainer.validate(DCBindingContainer.java:2893)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.validateModelUpdates(PageLifecycleImpl.java:284)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$4.execute(Lifecycle.java:263)
         at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$3.after(ADFPhaseListener.java:350)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.vscadf.userinterface.util.AppSessionExpiry.doFilter(AppSessionExpiry.java:92)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    ## Detail 0 ##
    oracle.jbo.AttrSetValException: JBO-27011: Attribute set with value Y for Active in VscAdfUsers failed
         at oracle.jbo.AttrValException.<init>(AttrValException.java:110)
         at oracle.jbo.AttrSetValException.<init>(AttrSetValException.java:96)
         at oracle.jbo.rules.RulesBeanUtils.raiseException(RulesBeanUtils.java:213)
         at oracle.jbo.rules.JboAbstractValidator.raiseException(JboAbstractValidator.java:136)
         at oracle.jbo.rules.JboAbstractValidator.validate(JboAbstractValidator.java:112)
         at oracle.jbo.rules.RulesBeanUtils.validateObject(RulesBeanUtils.java:387)
         at oracle.jbo.rules.RulesBeanUtils.validate(RulesBeanUtils.java:361)
         at oracle.jbo.server.AttributeDefImpl.set(AttributeDefImpl.java:1883)
         at oracle.jbo.server.EntityImpl.setAttributeInternal(EntityImpl.java:1083)
         at oracle.vscadf.datamodel.entities.VscAdfUsersImpl.setActive(VscAdfUsersImpl.java:213)
         at oracle.vscadf.datamodel.entities.VscAdfUsersImpl.setAttrInvokeAccessor(VscAdfUsersImpl.java:365)
         at oracle.jbo.server.EntityImpl.setAttribute(EntityImpl.java:996)
         at oracle.jbo.server.EntityImpl.readAttrsFromXML(EntityImpl.java:6859)
         at oracle.jbo.server.Serializer.activateEntity(Serializer.java:646)
         at oracle.jbo.server.Serializer.activateTxn(Serializer.java:540)
         at oracle.jbo.server.Serializer.activate(Serializer.java:268)
         at oracle.jbo.server.DBSerializer.activateRootAM(DBSerializer.java:330)
         at oracle.jbo.server.ApplicationModuleImpl.activateState(ApplicationModuleImpl.java:5549)
         at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:178)
         at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7769)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4074)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2161)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:1961)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:2793)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:453)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:424)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:419)
         at oracle.adf.model.bc4j.DCJboDataControl.rebuildApplicationModule(DCJboDataControl.java:1543)
         at oracle.adf.model.bc4j.DCJboDataControl.beginRequest(DCJboDataControl.java:1404)
         at oracle.adf.model.BindingContext.beginRequest(BindingContext.java:683)
         at oracle.adf.model.BindingRequestHandler.invokeBeginRequest(BindingRequestHandler.java:346)
         at oracle.adf.model.BindingRequestHandler.beginRequest(BindingRequestHandler.java:166)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:161)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    11/02/24 13:59:52 CustErrorHandler:reportException:Start...
    11/02/24 13:59:52 Throw:Exception:oracle.jbo.TxnValException: JBO-27023: Failed to validate all rows in a transaction.
    11/02/24 13:59:52 [13075] * * * BindingContainer caching EXCEPTION:oracle.jbo.TxnValException
    11/02/24 13:59:52 [13076] oracle.jbo.RowValException: JBO-27024: Failed to validate a row with key oracle.jbo.Key[1521 ] of type ADFPublicService.VscAdfUsersView
         at oracle.jbo.server.EntityImpl.validate(EntityImpl.java:1600)
         at oracle.jbo.server.DBTransactionImpl.validate(DBTransactionImpl.java:4031)
         at oracle.adf.model.bc4j.DCJboDataControl.validate(DCJboDataControl.java:1018)
         at oracle.adf.model.binding.DCBindingContainer.validateInputValues(DCBindingContainer.java:2918)
         at oracle.adf.model.binding.DCBindingContainer.validate(DCBindingContainer.java:2893)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.validateModelUpdates(PageLifecycleImpl.java:284)
         at oracle.adf.controller.v2.lifecycle.Lifecycle$4.execute(Lifecycle.java:263)
         at oracle.adf.controller.v2.lifecycle.Lifecycle.executePhase(Lifecycle.java:116)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.mav$executePhase(ADFPhaseListener.java:29)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener$3.after(ADFPhaseListener.java:350)
         at oracle.adf.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:90)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:254)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.vscadf.userinterface.util.AppSessionExpiry.doFilter(AppSessionExpiry.java:92)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    ## Detail 0 ##
    oracle.jbo.AttrSetValException: JBO-27011: Attribute set with value Y for Active in ADFPublicService.VscAdfUsersView failed
         at oracle.jbo.AttrValException.<init>(AttrValException.java:110)
         at oracle.jbo.AttrSetValException.<init>(AttrSetValException.java:96)
         at oracle.jbo.rules.RulesBeanUtils.raiseException(RulesBeanUtils.java:213)
         at oracle.jbo.rules.JboAbstractValidator.raiseException(JboAbstractValidator.java:136)
         at oracle.jbo.rules.JboAbstractValidator.validate(JboAbstractValidator.java:112)
         at oracle.jbo.rules.RulesBeanUtils.validateObject(RulesBeanUtils.java:387)
         at oracle.jbo.rules.RulesBeanUtils.validate(RulesBeanUtils.java:361)
         at oracle.jbo.server.AttributeDefImpl.set(AttributeDefImpl.java:1883)
         at oracle.jbo.server.EntityImpl.setAttributeInternal(EntityImpl.java:1083)
         at oracle.vscadf.datamodel.entities.VscAdfUsersImpl.setActive(VscAdfUsersImpl.java:213)
         at oracle.vscadf.datamodel.entities.VscAdfUsersImpl.setAttrInvokeAccessor(VscAdfUsersImpl.java:365)
         at oracle.jbo.server.EntityImpl.setAttribute(EntityImpl.java:996)
         at oracle.jbo.server.EntityImpl.readAttrsFromXML(EntityImpl.java:6859)
         at oracle.jbo.server.Serializer.activateEntity(Serializer.java:646)
         at oracle.jbo.server.Serializer.activateTxn(Serializer.java:540)
         at oracle.jbo.server.Serializer.activate(Serializer.java:268)
         at oracle.jbo.server.DBSerializer.activateRootAM(DBSerializer.java:330)
         at oracle.jbo.server.ApplicationModuleImpl.activateState(ApplicationModuleImpl.java:5549)
         at oracle.jbo.server.ApplicationPoolMessageHandler.doPoolMessage(ApplicationPoolMessageHandler.java:178)
         at oracle.jbo.server.ApplicationModuleImpl.doPoolMessage(ApplicationModuleImpl.java:7769)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.sendPoolMessage(ApplicationPoolImpl.java:4074)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.prepareApplicationModule(ApplicationPoolImpl.java:2161)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.doCheckout(ApplicationPoolImpl.java:1961)
         at oracle.jbo.common.ampool.ApplicationPoolImpl.useApplicationModule(ApplicationPoolImpl.java:2793)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:453)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:424)
         at oracle.jbo.common.ampool.SessionCookieImpl.useApplicationModule(SessionCookieImpl.java:419)
         at oracle.adf.model.bc4j.DCJboDataControl.rebuildApplicationModule(DCJboDataControl.java:1543)
         at oracle.adf.model.bc4j.DCJboDataControl.beginRequest(DCJboDataControl.java:1404)
         at oracle.adf.model.BindingContext.beginRequest(BindingContext.java:683)
         at oracle.adf.model.BindingRequestHandler.invokeBeginRequest(BindingRequestHandler.java:346)
         at oracle.adf.model.BindingRequestHandler.beginRequest(BindingRequestHandler.java:166)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:161)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
         at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
         at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    Jerry

    Looks like you try to set the attribute 'Active' to Y which the DB assumes to be not valid data.
    Check what kind of data (e.g. numbers of strings or characters) is valid to insert for the attribute 'Active' in the DB and the EO and the VO.
    Timo

  • JSP page error: JSPtranslate: attribute | has no value.

    Hi again,
    I've written the JAVA class, the TLD and the JSP but when I try to provide the parameters to the TLD file in the JSP I get this error: JSPTranslate: attribute | has no value. /**** My TLD file is in a WEB_INF/tags/ directory. ***/
    I've included my JAVA class, JSP and TLD files below.
    package com.ibm.samples.TEMP;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class TEMP extends TagSupport
         private int mandatory = 0;
    //Set method base upon info from .tld file
         public void setMandatory(int mandatory)
             this.mandatory = mandatory;
    //Init tag called from .JSP page that used the custom tag.
        public int doStartTag() {
           try
                JspWriter out = pageContext.getOut();
                out.println("<table border=1>");
           if (mandatory == 1)
               out.println("<tr><td> <input type=\"text\"" +
                     "style=\"background-color:yellow\" size=\"25\" name=\"user\">");
              else
               out.println("<tr><td> <input type=\"text\"" +
                     "style=\"background-color:white\" size=\"25\" name=\"user\">");
           catch (Exception ex)
                  throw new Error("Failure");
    // Must return SKIP_BODY because there isn't a body for this tag.
           return SKIP_BODY;
    //End tag ends table and exits, along with error / exception catching
         public int doEndTag(){
            try  {
                                  JspWriter out = pageContext.getOut()
                                  out.println("</table>");
                          catch (Exception ex)
                                  throw new Error("Failure.");
          return EVAL_PAGE;
    --------------END OF CLASS--------------
    ----------------------JSP----------------------
    <%@ taglib [tagdir="/WEB-INF/tags/" | uri="/WEB-INF/tags/inputTAGS.tld"] prefix="I" %>
    <HTML>
      <HEAD> 
           <TITLE>Custom Tags</TITLE> 
      </HEAD>
      <BODY BGCOLOR = "WHITE">
          <H3>Custom Tags!</H3>
          <FORM METHOD="GET" ACTION="customTags.jsp">
            <P>
            Enter First Name:<br>:
            <P>
            <I:inputTags mandatory="1"/>
            <P>
            Enter Last Name:<br>:
            <P>
            <I:inputTags mandatory="1"/>
            <P>
            Enter Phone Number:<br>:
            <P>
            <I:inputTags mandatory="0"/>
            <P>
            <INPUT TYPE="SUBMIT" VALUE="Submit">
            <INPUT TYPE="RESET" VALUE="Reset">
          </FORM>
      </BODY>
    </HTML>
    --------------END OF JSP--------------
    --------------------TLD--------------------
    <?xml version = "1.0" encoding = "ISO-8859-1"?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN"
    "http://java.sun.com/dtd/Web-jsptaglibrary_1_2.dtd">
    <taglib xmlns = "http://java.sun.com/JSP/TagLibraryDescriptor">
    <tlib-version>1.0</tlib-version>
    <jsp-version>1.2</jsp-version>
    <short-name>Input tags library</short-name>
    <description>Custom tags test</description>
    <tag>
    <name>inputTags</name>
    <tag-class>com.ibm.samples.temp.TEMP</tag-class>
    <description>
    Formatted text box:
    </description>
    <attribute>
    <name>mandatory</name>
    <required>true</required>
    <rtexprvalue>true</rtexprvalue>
    </attribute>
    </tag>
    </taglib>
    - LS6V

    I made a new web project and the TLD link is fine. But I have a new error:JspTranslate: unable to load class null I'm recieving the error in my JSP page editor.
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@ taglib uri = "/WEB-INF/lib/tag.tld" prefix="I" %>
    <HTML>
      <HEAD>
           <TITLE>Custom Tags</TITLE>
      </HEAD>
      <BODY BGCOLOR = "WHITE">
          <H3>Custom Tags!</H3>
          <FORM METHOD="GET" ACTION="JSPTAG.jsp">
            <P>
            Enter First Name:<br>:
            <P>
    ERROR FOUND HERE ----------->>> <I:inputTag mandatory="1"/>
            <P>
            Enter Last Name:<br>:
            <P>
            <I:inputTag  mandatory="1"/>
            <P>
            Enter Phone Number:<br>:
            <P>
            <I:inputTag mandatory="0"/>
            <P>
            <INPUT TYPE="SUBMIT" VALUE="Submit">
          </FORM>
      </BODY>
    </HTML>---------------------------JAVA CLASS-------------------------
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class TAG extends TagSupport
         private String mandatory="";
         private int iMandatory = 0;
    //Set method base upon info from .tld file
         public void setMandatory(String hold)
             mandatory = hold;
             iMandatory = Integer.parseInt(mandatory);
         public String getMandatory()
          return(mandatory);
    //Init tag called from .JSP page that used the custom tag.
        public int doStartTag() {
           try
            JspWriter out = pageContext.getOut();
            out.println("<table border=1>");
             if ( iMandatory == 1)
               out.println("<tr><td> <input type=\"text\"" +
                     "style=\"background-color:yellow\" size=\"25\" name=\"user\">");
            else
               out.println("<tr><td> <input type=\"text\"" +
                     "style=\"background-color:white\" size=\"25\" name=\"user\">");
           catch (Exception ex)
                  throw new Error("Failed in doStartTag");
    // Must return SKIP_BODY because there isn't a body for this tag.
           return SKIP_BODY;
    //End tag ends table and exits, along with error / exception catching
         public int doEndTag(){
            try {
                 JspWriter out = pageContext.getOut();
                out.println("</table>");
            } catch (Exception ex){
                  throw new Error("Failed in doEndTag");
            return EVAL_PAGE;
    }---------------------------TLD------------------------
    <?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">
    <taglib xmlns ="http://java.sun.com/JSP/TagLibraryDescriptor">
      <tlib-version>1.0</tlib-version>
      <jsp-version>1.2</jsp-version>
      <short-name>Input tags library</short-name>
      <description>Custom tags test</description>
      <tag>
        <name>inputTag</name>
        <tag-class>source.TAG</tag-class>
        <description>
            Formatted text box:
        </description>
        <attribute>
          <name>mandatory</name>
          <required>true</required>
          <rtexprvalue>true</rtexprvalue>
          <type>String</type>
        </attribute>
      </tag>
    </taglib>

  • Problems with custom JSP Tag, can someone offer some advice?

    Greetings,
    I have a problem here that I am stumped on. I am trying to create a custom JSP tag, I created a simple "Hello World" JSP, however, I am coming up a bit short. I am running Apache Tomcat 6.0 on a Win XP environment.
    The code I have is as follows:
    TLDTest.tld:
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
    "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_2.dtd">
    <taglib>
         <tlibversion>1.0</tlibversion>
         <jspversion>1.2</jspversion>
         <shortname>firstTag</shortname>
         <info>My First Tag</info>
    <!-- Here goes nothing!!! -->
    <tag>
         <name>hola</name>
         <tagclass>Hola</tagclass>
         <bodycontent>empty</bodycontent>
         <info>a simple hello tag</info>
    <!-- attributes -->
    <!-- Personalize the name -->
    <attribute>
         <name>name</name>
         <required>false</required>
         <rtexpvalue>false</rtexpvalue>
    </attribute>
    </tag>
    </taglib>
    The Hola.jsp is:
    <%@ taglib uri="/Hola" prefix="test" %>
    <html>
         <head>Just a little test on tags</head>
         <body>
              <hr />
              <test:Hola name="Woot Master" />
              <hr />
         </body>
    </html>
    And the source code for the .class file (named Hola) is:
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport
         private String name = null;
         public void setName(String value)
              name = value;
         public String getName()
              return(name);
    /* doStartTag is called and defined below here for the java tag */
         public int doStartTag()
              try
                   JspWriter out = pageContext.getOut();
                   out.println("<table border=1>");
                        if (name != null)
                             out.println("<tr><td> Hola " + name + "!" + "</td></tr>");
                        else
                             out.println("<tr><td> Hola! Porque tu es una piquito perra? </td></tr>");
              catch (Exception ex)
                   throw new Error("Dio's Mio!, Esta No Va!, tu problema es en la StartTag!!!");
              return SKIP_BODY;
    /* doEndTag is defined here. */
         public int doEndTag()
              try
                   final JspWriter out = pageContext.getOut();
                   out.println("</table>");
              catch (final Exception ex)
                   throw new Error("Oops, it's broken, check your coding in the End tag!!!");
    What I keep getting is the following error:
    org.apache.jasper.JasperException: /Hola/Hola.jsp(6,2) No tag "Hola" defined in tag library imported with prefix "test"
         org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
         org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
         org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:198)
    I've been back and forth on this, but I am lost. Obviously I am missing something, but what is it? It wouldn't be in the web.xml file would it? I am running a vanilla tomcat install. Any help that anyone can provide would be greatly appreciated.
    Sincerely,
    - Josh

    Ok
    1 - In the JSP, your tag should be "hola" not "Hola". Yes case matters.
      <test:hola name="Woot Master" />2 - Importing the taglibrary correctly.
    Either reference its tld <%@ taglib uri="/WEB-INF/Hola.tld" prefix="test" %>
    (and have the tld file sitting in /WEB-INF/Hola.tld )
    or
    Define a uri for it in the tld...
    <taglib>
    <tlibversion>1.0</tlibversion>
    <jspversion>1.2</jspversion>
    <shortname>firstTag</shortname>
    <uri>http://mytag/hola</uri>
    ...and then use that uri to import it in your JSP
    <%@ taglib uri="http://mytag/hola" prefix="test" %>
    3 - Put your tag class in a package. Classes not in packages have a way of not being found.
    package mypackage
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport {
    ...That will move it in your folder structure to be /mypackage/Hola.java
    You would also need to update the tagclass element in the tld to reflect the change:
    <tagclass>mypackage.Hola</tagclass>4 - Mistake in your tld: You are missing an "r" in "rtexprvalue". <rtexpvalue> should be <rtexp*r*value>
    5 - In your Tag class, you should return something from the "doEndTag()" method.
    return super.doEndTag(); or maybe return EVAL_PAGE;
    Revised code:
    WEB-INF/hola.tld
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
    "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_2.dtd">
    <taglib>
         <tlibversion>1.0</tlibversion>
         <jspversion>1.2</jspversion>
         <shortname>firstTag</shortname>
         <uri>http://mytag/hola</uri>
         <info>My First Tag</info>
         <!-- Here goes nothing!!! -->
         <tag>
              <name>hola</name>
              <tagclass>mypackage.Hola</tagclass>
              <bodycontent>empty</bodycontent>
              <info>a simple hello tag</info>
              <!-- attributes -->
              <!-- Personalize the name -->
              <attribute>
                   <name>name</name>
                   <required>false</required>
                   <rtexprvalue>false</rtexprvalue>
              </attribute>
         </tag>
    </taglib>hola.jsp:
    <%@ taglib uri="http://mytag/hola" prefix="test"%>
    <html>
      <head>Just a little test on tags</head>
      <body>
        <hr />
        <test:hola name="Woot Master" />
        <hr />
      </body>
    </html>Hola.java. Compiles into WEB-INF/classes/mypackage/Hola.class
    package mypackage;
    import javax.servlet.jsp.*;
    import javax.servlet.jsp.tagext.*;
    public class Hola extends TagSupport {
         private String name = null;
         public void setName(String value) {
              name = value;
         public String getName() {
              return (name);
         /* doStartTag is called and defined below here for the java tag */
         public int doStartTag() {
              try {
                   JspWriter out = pageContext.getOut();
                   out.println("<table border=1>");
                   if (name != null)
                        out.println("<tr><td> Hola " + name + "!" + "</td></tr>");
                   else
                        out.println("<tr><td> Hola! Porque tu es una piquito perra? </td></tr>");
              } catch (Exception ex) {
                   throw new Error("Dio's Mio!, Esta No Va!, tu problema es en la StartTag!!!");
              return SKIP_BODY;
         /* doEndTag is defined here. */
         public int doEndTag() {
              try {
                   final JspWriter out = pageContext.getOut();
                   out.println("</table>");
                   return super.doEndTag();
              } catch (final Exception ex) {
                   throw new Error("Oops, it's broken, check your coding in the End tag!!!");
    }Cheers,
    evnafets

  • How I can use struts with uix jsp

    Hi,
    I want to use struts with uix jsp but I don't know how to set value of uix tag attribut by struts tag
    example :
    I want to change:
    <uix:globalHeader text="title" >
    by
    <uix:globalHeader>
    <bean:message key="title" arg0="Browse"/>
    </uix:globalHeader>
    N.B: I tried to use the tag <boundAttribute> but doesn't works
    Thanks in advance.

    Hi Ghazouani,
    From your sample code it looks like you are trying to use the Struts <bean:message> to provide internationalized text for the links in your globalHeader component. Couple of comments on this particular issue:
    - You'll need to add a <link> element to your globalHeader for each item that you want to display. So, instead of:
    <uix:globalHeader>
    <bean:message key="title" arg0="Browse"/>
    </uix:globalHeader>
    You'll want something which looks like this:
    <uix:globalHeader>
    <uix:link text="Browse"/>
    </uix:globalHeader>
    - If you want to bind the text for each link to some internationalized value which is pulled from a ResourceBundle, you should use the UIX JSP <bundle> data provider:
    <uix:bundle name="l10n" class="your.Bundle"/>
    <uix:globalHeader>
    <uix:link textBinding="title@l10n"/>
    </uix:globalHeader>
    In general when mixing JSP tags from different tag libraries, you need to be careful that you honor the semantics of each tag library. For example, in this particular case, the <uix:globalHeader> expects to have <uix:link> children - using any arbitrary tag (like <bean:message>) is not necessarily going to produce the desired results.
    As far as general UIX/Struts integration goes, we recommend using uiXML as a view for your Struts application. Check out the "Using uiXML with Struts" section of the UIX Developer's Guide for more info.
    Andy

  • Error with HeaderiView.jsp file

    Hi there,
    I took the masthead par file from the portal and I did some changes in the HeaderiView.jsp. When I try the iview in the preview I see the next error:
    Portal Runtime Error
    An exception occurred while processing a request for :
    iView : pcd:portal_content/pruebasjanet/ZiwImage/zprueba54
    Component Name : prueba1701.default
    Error occurs during the rendering of jsp component.
    Exception id: 10:14_06/09/07_0075_33099350
    See the details for the exception ID in the log file
    I already added the com.sap.portal.navigation.mastheadapi.jar in \PORTAL-INF\lib
    and com.sap.portal.navigation.masthead_core.jar \PORTAL-INF\private\lib.
    Any help would be greatly appreciated!
    Jeanette

    Hi Malini,
    Yes, I did some changes in Jsp file. I'm trying to make a copy of the Help Link. I copied all the components in the portalapp.xml (only changes, for example, <property name="ShowHelpLink" value="true">    <property name="ShowSiteLink" value="true">)
    Would you please help me checking the code?
    Thanks.
    Jeanette
    With the jsp file I have problems:
    <%@ page import = "java.util.ResourceBundle" %>
    <%@ page import = "com.sapportals.htmlb.*" %>
    <%@ page import = "com.sapportals.portal.prt.session.IUserContext" %>
    <%@ page import = "com.sapportals.portal.prt.component.*" %>
    <%@ page import = "com.sapportals.portal.prt.service.laf.*" %>
    <%@ page import = "com.sap.security.api.UMFactory" %>
    <%@ page import = "com.sapportals.portal.prt.service.license.ILicenseService"%>
    <%@ page import = "com.sapportals.portal.navigation.*" %>
    <%@ page import = "com.sapportals.portal.prt.runtime.PortalRuntime" %>
    <%@ page import = "com.sapportals.portal.prt.util.StringUtils" %>
    <%@ taglib uri="prt:taglib:tlhtmlb" prefix="hbj" %>
    <%!
    final String PERSONALIZE_PAGE_EVENT_URN = "urn:com.sapportals:navigation";
    final String PERSONALIZE_PAGE_EVENT_NAME = "PersonalizePage";
    final String PERSONALIZE_PAGE_EVENT_PARAMS = "";
    final String PERSONALIZE_PORTAL_EVENT_URN = "urn:com.sapportals:navigation";
    final String PERSONALIZE_PORTAL_EVENT_NAME = "PersonalizePortal";
    final String PERSONALIZE_PORTAL_EVENT_PARAMS = "";
    final String LOGOFF_CONFIRM_MSG_COMPONENT = "logoffConfirmMsg";
    final String LOGON_REDIRECT_COMPONENT = "logInComponent";
    final String LOGOFF_REDIRECT_COMPONENT = "LogOutComponent";
    final String LOGOFF_CONFIRM_MSG_ARGS_IE = "dialogHeight: 170px; dialogWidth: 350px; edge: Raised; center: Yes; help: No; resizable: No; status: No";
    final String LOGOFF_CONFIRM_MSG_ARGS_NS = "Height=170,Width=350";
    final String LOGOFF_CONFIRM_WINDOW_NAME = "LOG_OFF_WINDOW";
    final String HELP_URL = "HelpUrl";
    final String SITE_URL = "SiteUrl";
    final String HELP_WINDOW_NAME = "HELP_WINODW";
    final String SITE_WINDOW_NAME = "SITE_WINODW";
    final String SHOW_PERSONALIZE_LINK = "ShowPersonalizeLink";
    final String SHOW_HELP_LINK = "ShowHelpLink";
    final String SHOW_SITE_LINK = "ShowSiteLink";
    final String SHOW_NEW_WINDOW_LINK = "ShowNewWindowLink";
    final String SHOW_LOG_OFF_LOG_ON_LINK = "ShowLogInLogOffLink";
    //String constants for NLS
    final String WELCOME_CLAUSE = "WELCOME_CLAUSE";
    final String HELP_TEXT = "HELP_TEXT";
    final String SITE_TEXT = "SITE_TEXT";
    final String LOG_OFF_TEXT = "LOG_OFF_TEXT";
    final String LOG_ON_TEXT = "LOG_ON_TEXT";
    final String PERSONALIZE_TEXT = "PERSONALIZE_TEXT";
    final String PERSONALIZE_PORTAL_TEXT = "PERSONALIZE_PORTAL_TEXT";
    final String NEW_WINDOW_TEXT = "NEW_WINDOW_TEXT";
    final String HELP_TOOLTIP = "HELP_TOOLTIP";
    final String SITE_TOOLTIP = "SITE_TOOLTIP";
    final String LOG_OFF_TOOLTIP = "LOG_OFF_TOOLTIP";
    final String LOG_ON_TOOLTIP = "LOG_ON_TOOLTIP";
    final String PERSONALIZE_TOOLTIP = "PERSONALIZE_TEXT";
    final String PERSONALIZE_PORATL_TOOLTIP = "PERSONALIZE_PORATL_TOOLTIP";
    final String NEW_WINDOW_TOOLTIP = "NEW_WINDOW_TOOLTIP";
    final String BEGINNING_OF_PAGE = "BEGINNING_OF_PAGE";
    final String MASTHEAD_ENTER_TOOLTIP = "MASTHEAD_ENTER_TOOLTIP";
    final String MASTHEAD_EXIT_TOOLTIP = "MASTHEAD_EXIT_TOOLTIP";
    final String UNLOAD_MSG = "UNLOAD_MSG";
    private String GetWelcomeMsg(IPortalComponentRequest request, String welcomeClause)
    IUserContext userContext = request.getUser();
    if (userContext != null)
    String firstName = userContext.getFirstName();
    String lastName = userContext.getLastName();
    String salutation = userContext.getSalutation();
    if ((firstName != null) && (lastName != null))
    if(salutation != null)
    return java.text.MessageFormat.format(welcomeClause, new Object[] {firstName, lastName, salutation}).toString();
    else
    return java.text.MessageFormat.format(welcomeClause, new Object[] {firstName, lastName, " "}).toString();
    else
    return java.text.MessageFormat.format(welcomeClause, new Object[] {userContext.getDisplayName()," ", " "}).toString();
    return "";
    private String GetLicenseText(IPortalComponentRequest request){
    ILicenseService license = (ILicenseService)request.getService(ILicenseService.KEY);
    if (license.sapInternalUsageOnly())
    return "<FONT color=orangeRed size=4><STRONG> Licensed For SAP Internal Usage</STRONG></FONT>";
    else
    return " ";
    private boolean getParameter(IPortalComponentRequest request, String param)
    String value = (String)request.getNode().getValue(param);
    return new Boolean(value).booleanValue();
    private String getHelpUrl(IPortalComponentRequest request)
    String value = (String)request.getNode().getValue(HELP_URL);
    return value;
    private String getSiteUrl(IPortalComponentRequest request)
    String value = (String)request.getNode().getValue(SITE_URL);
    return value;
    private String GetLogoffConfirmMsgURL(IPortalComponentRequest request)
    String componentName = request.getComponentContext().getComponentName();
    componentName = componentName.substring(0, componentName.lastIndexOf(".") + 1);
    IPortalComponentURI msgURI = request.createPortalComponentURI();
    msgURI.setContextName(componentName + LOGOFF_CONFIRM_MSG_COMPONENT);
    return msgURI.toString();
    // Attaching the "UnsavedData=true" flag to the Confirm logoff message
    private String GetLogoffConfirmUnsavedMsgURL(IPortalComponentRequest request)
    String basicUrl = GetLogoffConfirmMsgURL(request);
    String separator = (basicUrl.indexOf("?") >=0) ? "&" : "?";
    return basicUrl + separator + "UnsavedData=true";
    private String GetLogoffURL(IPortalComponentRequest request)
    /*IPortalComponentURI logoffURI = request.createPortalComponentURI();
    return logoffURI.toString();*/
    String componentName = request.getComponentContext().getComponentName();
    componentName = componentName.substring(0, componentName.lastIndexOf(".") + 1);
    IPortalComponentURI msgURI = request.createPortalComponentURI();
    msgURI.setContextName(componentName + LOGOFF_REDIRECT_COMPONENT);
    return msgURI.toString();
    private boolean isAccessabilityOn(IPortalComponentRequest request)
    //End: Temporary, till there's a way to set the accessibility for a user
    IUserContext user = request.getUser();
    //if((user.getAccessibilityLevel() != IUserContext.DEFAULT_ACCESSIBILITY_LEVEL) ||(isAccessibility == true) ) // 508 is on
    if (user.getAccessibilityLevel() != IUserContext.DEFAULT_ACCESSIBILITY_LEVEL) // 508 is on
    return true;
    return false;
    private String GetLoginURL(IPortalComponentRequest request)
    INavigationGenerator navigationService = (INavigationGenerator)PortalRuntime.getRuntimeResources().getService(INavigationService.KEY);
    StringBuffer URL = new StringBuffer(200).append(navigationService.getPortalURL(request , null));
    return URL.append("/login").toString();
    private String GetPortalUrl(IPortalComponentRequest request)
    INavigationGenerator navigationService = (INavigationGenerator)PortalRuntime.getRuntimeResources().getService(INavigationService.KEY);
    return navigationService.getPortalURL(request , null);
    private String getNLSString(IPortalComponentRequest request, String resource_key)
    try
    ResourceBundle bundle = request.getResourceBundle();
    if(bundle != null)
    return bundle.getString(resource_key);
    return resource_key;
    catch(MissingResourceException e)
    return resource_key;
    private String GetThemeURLPath(IPortalComponentRequest request)
    ILAFService iLAFService = (ILAFService)request.getService(ILAFService.KEY);
    String currentTheme = iLAFService.getCurrentTheme(request).getThemeName();
    String url = iLAFService.getRelativeThemeRootURLPath(request, ILAFService.PORTAL_THEME) + "/" + currentTheme + "/prtl";
    return url;
    //Get the external logoff URL
    private String getExternalLogOffUrl()
    return UMFactory.getProperties().get("ume.logoff.redirect.url");
    //Get the external logoff Mode (silent / not silent)
    private boolean getExternalLogOffMode()
    return UMFactory.getProperties().getBoolean("ume.logoff.redirect.silent" , false);
    private boolean isAnonymous(IPortalComponentRequest request)
    NavigationEventsHelperService helperService = (NavigationEventsHelperService)
    PortalRuntime.getRuntimeResources().getService(NavigationEventsHelperService.KEY);
    return helperService.isAnonymousUser(request);
    %>
    <%
    boolean isPreview = false;
    // initializaing the labels with the localized labels
    String welcomeClauseStr = getNLSString(componentRequest, WELCOME_CLAUSE);
    String helpTextStr = getNLSString(componentRequest, HELP_TEXT);
    String siteTextStr = getNLSString(componentRequest, SITE_TEXT);
    String logOffTextStr = getNLSString(componentRequest, LOG_OFF_TEXT);
    String logInTextStr = getNLSString(componentRequest, LOG_ON_TEXT);
    String personalizeTextStr = getNLSString(componentRequest, PERSONALIZE_TEXT);
    String newWindowTextStr = getNLSString(componentRequest, NEW_WINDOW_TEXT);
    String helpTooltipStr = getNLSString(componentRequest, HELP_TOOLTIP);
    String siteTooltipStr = getNLSString(componentRequest, SITE_TOOLTIP);
    String logOffTooltipStr = getNLSString(componentRequest, LOG_OFF_TOOLTIP);
    String logInTooltipStr = getNLSString(componentRequest, LOG_ON_TOOLTIP);
    String personalizeTooltipStr = getNLSString(componentRequest, PERSONALIZE_TOOLTIP);
    String personalizePortalTooltipStr = getNLSString(componentRequest, PERSONALIZE_PORATL_TOOLTIP);
    String beginningOfPageStr = getNLSString(componentRequest, BEGINNING_OF_PAGE);
    String newWindowStr = getNLSString(componentRequest, NEW_WINDOW_TOOLTIP);
    String mastheadEnterTable = getNLSString(componentRequest, MASTHEAD_ENTER_TOOLTIP);
    String mastheadExitTable = getNLSString(componentRequest, MASTHEAD_EXIT_TOOLTIP);
    String unLoadMsg = getNLSString(componentRequest, UNLOAD_MSG);
    boolean showPersonalizeLink = getParameter(componentRequest, SHOW_PERSONALIZE_LINK);
    boolean showHelpLink = getParameter(componentRequest, SHOW_HELP_LINK);
    boolean showSiteLink = getParameter(componentRequest, SHOW_SITE_LINK);
    boolean showNewWindowLink = getParameter(componentRequest, SHOW_NEW_WINDOW_LINK);
    boolean ShowLogInLogOffLink = getParameter(componentRequest, SHOW_LOG_OFF_LOG_ON_LINK);
    String mode = (String)componentRequest.getNode().getValue("mode");
    if ((mode != null) && (mode.equals("preview")))
    isPreview = true;
    String themeRootURLPath = GetThemeURLPath(componentRequest);
    boolean isAnonymous = isAnonymous(componentRequest);
    boolean isAccessabilityOn = isAccessabilityOn(componentRequest);
    if (isAccessabilityOn)
    helpTooltipStr = helpTextStr", "helpTooltipStr;
    siteTooltipStr = siteTextStr", "siteTooltipStr;
    logOffTooltipStr = logOffTextStr", "logOffTooltipStr;
    logInTooltipStr = logInTextStr", "logInTooltipStr;
    newWindowStr = newWindowTextStr", "newWindowStr;
    personalizePortalTooltipStr = personalizeTextStr", "personalizePortalTooltipStr;
    %>
    <script>
    function openLogoffMsg()
    <%if (!isPreview){%>
    if (EPCM.getUAType() == EPCM.MSIE)
    releaseProducerSessions();
    if(EPCM.getGlobalDirty())
    // unsaved data on the page, display modified dialog
    var val = window.showModalDialog('<%=GetLogoffConfirmUnsavedMsgURL(componentRequest)%>', '', '<%=LOGOFF_CONFIRM_MSG_ARGS_IE%>');
    if (val == 'logoff')
    disableWorkProtectCheck = true;
    logoff();
    else //no unsaved data
    // data saved, nothing get lost on the page, display normal dialog
    var val = window.showModalDialog('<%=GetLogoffConfirmMsgURL(componentRequest)%>', '', '<%=LOGOFF_CONFIRM_MSG_ARGS_IE%>');
    if (val == 'logoff')
    logoff();
    else
    if(EPCM.getGlobalDirty())
    window.open('<%=GetLogoffConfirmUnsavedMsgURL(componentRequest)%>', '<%=LOGOFF_CONFIRM_WINDOW_NAME%>', '<%=LOGOFF_CONFIRM_MSG_ARGS_NS%>');
    else
    window.open('<%=GetLogoffConfirmMsgURL(componentRequest)%>', '<%=LOGOFF_CONFIRM_WINDOW_NAME%>', '<%=LOGOFF_CONFIRM_MSG_ARGS_NS%>');
    <%}%>
    var isLogoffFinalAllowed = true;
    var logoffStartTime = (new Date).getTime();
    function logoff()
    EPCM.raiseEvent("urn:com.sapportals.portal:user", "logoff", "");
    logoffStartTime = (new Date).getTime();
    window.setTimeout("logoffDelay()", "50");
    function logoffDelay()
    var isLogoffDelayElapsed = ((new Date).getTime() - logoffStartTime) > (60*1000);
    if(isLogoffFinalAllowed || isLogoffDelayElapsed) {
    logoffFinalCall();
    } else {
    window.setTimeout("logoffDelay()","50");
    function logoffFinalCall()
    logoffThirdParty();
    document.forms["logoffForm"].submit();
    function logIn()
    location.replace("<%=GetLoginURL(componentRequest)%>");
    function runPersonalizePage()
    EPCM.raiseEvent("<%=PERSONALIZE_PAGE_EVENT_URN%>", "<%=PERSONALIZE_PAGE_EVENT_NAME%>", "<%=PERSONALIZE_PAGE_EVENT_PARAMS%>");
    function runPersonalizePortal()
    <%if (!isPreview){%>
    EPCM.raiseEvent("<%=PERSONALIZE_PORTAL_EVENT_URN%>", "<%=PERSONALIZE_PORTAL_EVENT_NAME%>", "<%=PERSONALIZE_PORTAL_EVENT_PARAMS%>");
    <%}%>
    function onPersonalizePortalDisable()
    var linkElem = document.getElementById("personalizePortal");
    var linkSepElem = document.getElementById("personalizePortalSep");
    var linkLogoffSepElem = document.getElementById("logoffsep1");
    if(linkElem != null)
    linkElem.style.display = "none";
    if(linkSepElem != null)
    linkSepElem.style.display = "none";
    if(linkLogoffSepElem != null)
    linkLogoffSepElem.style.display = "none";
    EPCM.subscribeEvent("urn:com.sapportals:navigation", "PersonalizePortalDisable", onPersonalizePortalDisable);
    function openNewPortalWindow()
    <%if (!isPreview){%>
    var navTarget = EPCM.getSAPTop().gHistoryFrameworkObj.GetActiveTrackingEntryValue().URL;
    var context = EPCM.getSAPTop().gHistoryFrameworkObj.GetActiveTrackingEntryValue().context;
    if (context != null && context.length > 0)
    EPCM.doNavigate(navTarget, 2, null, null, null, null, context);
    else
    EPCM.doNavigate(navTarget, 2);
    <%}%>
    function openHelp()
    <%if (!isPreview){%>
    window.open('<%=getHelpUrl(componentRequest)%>', '<%=HELP_WINDOW_NAME%>');
    <%}%>
    function openSite()
    <%if (!isPreview){%>
    window.open('<%=getSiteUrl(componentRequest)%>', '<%=SITE_WINDOW_NAME%>');
    <%}%>
    function setFocusOnHeader() {
    var melcomeMessage = document.getElementById("welcome_message");
    var headerNotch = document.getElementById("header_notch");
    if(EPCM.getUAType()==EPCM.MOZILLA) {
    // No focus
    } else {
    if(melcomeMessage!=null && melcomeMessage.currentStyle.display!="none") {
    melcomeMessage.focus();
    } else if(headerNotch!=null && headerNotch.currentStyle.display!="none") {
    headerNotch.focus();
    function logoffThirdParty()
    <% if(getExternalLogOffUrl()!= null){ %>
    var logOffUrl = '<%=getExternalLogOffUrl()%>';
    var silent = <%=getExternalLogOffMode()%>;
    if(silent)
    var newIFrame = document.getElementById("externalLogOffIframe");
    if(newIFrame == null)
    newIFrame = document.createElement("IFRAME");
    newIFrame.style.visibility = "hidden";
    newIFrame.width=0;
    newIFrame.height=0;
    newIFrame.id = "externalLogOffIframe";
    newIFrame.src = logOffUrl;
    document.body.appendChild(newIFrame);
    else
    newIFrame.src = "javascript:void(0)";
    newIFrame.src = logOffUrl;
    <% } %>
    </script>
    <hbj:content id="PageContext">
    <hbj:page title="Header Area">
    <hbj:form id="HeaderForm" >
    <!--<a href="#" tabindex=0 title= "<%=beginningOfPageStr%>" accesskey="m">
    <img src="<%=themeRootURLPath%>/../common/1x1.gif" border="0" style="display:none">
    </a>-->
    <% if (isAccessabilityOn)
    {%>
    <TABLE width="100%" border="0" id="myTable" ti="0" tabindex="0" title="<%=mastheadEnterTable%>" onkeydown="nav_skip('myTable',event)" ct="PortalMasthead" cellspacing="0" cellpadding="0" ><% if (isPreview) {%>ondragover="window.event.cancelBubble = true;" ondragleave="window.event.cancelBubble = true;"<%}%>>
    <%} else
    {%>
    <TABLE width="100%" border="0" cellspacing="0" cellpadding="0" class="prtlHdrWhl" id="myTable" ti="0" tabindex="0" onkeydown="nav_skip('myTable',event)" ><% if (isPreview) {%>ondragover="window.event.cancelBubble = true;" ondragleave="window.event.cancelBubble = true;"<%}%>>
    <%}%>
    <tbody>
    <TR>
    <TD width="1%" nowrap class="prtlHeaderNotch" id="header_notch"> </TD>
          <TD width="5%" nowrap class="prtlHdrWelcome" id="welcome_message" ti="0" tabIndex="0"><%=StringUtils.escapeToHTML(GetWelcomeMsg(componentRequest, welcomeClauseStr))%></TD>
    <TD width="3%" nowrap class="prtlHdrWelcome" id="welcome_message" ti="1" tabIndex="1">
    <SCRIPT LANGUAGE="JavaScript">
    var months=new Array(13);
    months[1]="January";
    months[2]="February";
    months[3]="March";
    months[4]="April";
    months[5]="May";
    months[6]="June";
    months[7]="July";
    months[8]="August";
    months[9]="September";
    months[10]="October";
    months[11]="November";
    months[12]="December";
    var time=new Date();
    var lmonth=months[time.getMonth() + 1];
    var date=time.getDate();
    var year=time.getYear();
    if ((navigator.appName == "Microsoft Internet Explorer") && (year < 2000))
    year="19" + year;
    if (navigator.appName == "Netscape")
    year=1900 + year;
    document.write("<center>" + lmonth + " ");
    document.write(date + ", " + year + "</center>");
    </SCRIPT>
    </TD>
    <% if (showSiteLink || showHelpLink || showPersonalizeLink || showNewWindowLink || ShowLogInLogOffLink)
    {%>
    <TD width="79%" class="prtlHeaderFunctionsTable">
    <TABLE border="0" cellspacing="0" cellpadding="0"
    class="prtlHeaderFunctionsContainer" height="100%">
    <TR>
    <TD nowrap >
    <!--<hbj:link id="SiteLink" tooltip="<%=siteTooltipStr%>" linkDesign="FUNCTION" reference="javascript:openSite();"><hbj:textView nested="true" text="<%=siteTextStr%>"/></hbj:link> -->
    <hbj:link id="SiteLink" tooltip="<%=siteTooltipStr%>"
    linkDesign="FUNCTION" reference="#">
    <% if (!isPreview) { SiteLink.setOnClientClick("javascript:openSite();");} %>
    <hbj:textView nested="true" text="<%=siteTextStr%>"/>
    </hbj:link>
    </TD>
                <TD nowrap>
                  <%}%>
    <%
    if (showHelpLink)
    { %>
    <TD nowrap >
    <!--<hbj:link id="HelpLink" tooltip="<%=helpTooltipStr%>" linkDesign="FUNCTION" reference="javascript:openHelp();"><hbj:textView nested="true" text="<%=helpTextStr%>"/></hbj:link> -->
    <hbj:link id="HelpLink" tooltip="<%=helpTooltipStr%>"
    linkDesign="FUNCTION" reference="#">
    <% if (!isPreview) { HelpLink.setOnClientClick("javascript:openHelp();");} %>
    <hbj:textView nested="true" text="<%=helpTextStr%>"/>
    </hbj:link>
    </TD>
                <TD nowrap>
                  <%}%>
                  <%
    if (!isAnonymous)
    if (showPersonalizeLink)
    if (showHelpLink)
    { %>
                <TD nowrap id="personalizePortalSep" class="prtlHdrSep"></TD>
    <%} %>
    <TD nowrap id="personalizePortal">
    <hbj:link id="PersonalizeLink"
    tooltip="<%=personalizePortalTooltipStr%>"
    linkDesign="FUNCTION"
    reference="#">
    <% if (!isPreview) {PersonalizeLink.setOnClientClick("javascript:runPersonalizePortal();");}%>
    <hbj:textView nested="true" text="<%=personalizeTextStr%>"/>
    </hbj:link>
    </TD>
    <TD nowrap></TD>
    <%}
    if (showNewWindowLink)
    if (showHelpLink || showPersonalizeLink)
    { %>
    <TD nowrap id="newWindowSep" class="prtlHdrSep"> </TD>
    <%}
    else
    {%>
    <TD nowrap> </TD>
    <%}%>
    <TD nowrap id="newWindow">
    <hbj:link id="newWindowLink" tooltip="<%=newWindowStr%>"
    linkDesign="FUNCTION"
    reference="#">
    <% if (!isPreview) {newWindowLink.setOnClientClick("javascript:openNewPortalWindow();");}%>
    <hbj:textView nested="true" text="<%=newWindowTextStr%>"/>
    </hbj:link>
    </TD>
    <%}%>
    <%}%>
    <TD>
    <%if (ShowLogInLogOffLink)
    {%>
    <TABLE cellspacing="0" cellpadding="0" border="0" class="prtlHeaderFunctionsContainer" height="100%">
    <TR><%
    if (showHelpLink || showPersonalizeLink || showNewWindowLink)
    {%>
    <%
    if(!showHelpLink && !showNewWindowLink)
    {%>
    <TD nowrap id="logoffsep1" class="prtlHdrSep"> </TD>
    <%
    }else
    {%>
    <TD nowrap id="logoffsep2" class="prtlHdrSep"> </TD>
    <%}%>
                      <TD nowrap>
                        <%
    }else
    {%>
                      <TD nowrap >  </TD>
    <%
    if (isAnonymous)
    {%>
                      <TD nowrap>
                        <!<hbj:link id="LoginLink" tooltip="<%=logInTooltipStr%>" linkDesign="FUNCTION" reference="javascript:logIn();"><hbj:textView nested="true" text="<%=logInTextStr%>"/></hbj:link>>
                        <hbj:link id="LoginLink"
    tooltip="<%=logInTooltipStr%>"
    linkDesign="FUNCTION"
    reference="#">
                        <% LoginLink.setOnClientClick("javascript:logIn();"); %>
                        <hbj:textView nested="true" text="<%=logInTextStr%>"/> </hbj:link>
                      </TD>
    <%}
    else
    {%>
                      <TD nowrap>
                        <!<hbj:link id="LogoffLink" tooltip="<%=logOffTooltipStr%>" linkDesign="FUNCTION" reference="javascript:openLogoffMsg();"><hbj:textView nested="true" text="<%=logOffTextStr%>"/></hbj:link>>
                        <hbj:link id="LogoffLink"
    tooltip="<%=logOffTooltipStr%>"
    linkDesign="FUNCTION"
    reference="#">
                        <%if (!isPreview) { LogoffLink.setOnClientClick("javascript:openLogoffMsg();");} %>
                        <hbj:textView nested="true" text="<%=logOffTextStr%>"/> </hbj:link>
                      </TD>
    <%}%>
    </TR>
    </TABLE>
    <%} %>
    </TD>
    </TR>
    </TABLE>
    </TD>
    <%}%>
          <TD width="12%" nowrap class="prtlHdrLogoContainer">
            <% if (isAccessabilityOn)
    {%>
            <%}%>
          </TD>
    </TR>
    </tbody>
    </TABLE>
    </hbj:form>
    </hbj:page>
    </hbj:content>
    <form name="logoffForm" style="display:none;position:absolute;top:-5000;left:-5000" action="<%=GetLogoffURL(componentRequest)%>" method="POST">
      <input type="hidden" name="logout_submit" value="true">
    </form>
    <script>
    <% if (!isPreview) {%>
    if (disablePersonalize) {
    EPCM.raiseEvent("urn:com.sapportals:navigation", "PersonalizePortalDisable", "");
    <%}%>
    setFocusOnHeader();
    EPCM.subscribeEvent("urn:com.sapportals.portal:browser","load",setFocusOnHeader);
    </script>

  • The ELResolvers for JSF were not registered with the JSP container

    I'm trying to configure mojarra on tomcat6 (because I want to use Elastic Beanstalk). tomcat complains:
    Feb 8, 2011 10:24:17 AM com.sun.faces.lifecycle.ELResolverInitPhaseListener populateFacesELResolverForJsp
    INFO: JSF1027: [null] The ELResolvers for JSF were not registered with the JSP container.
    I have tried all sorts of combinations of replacing EL2.2 libs in tomcat/lib, putting the libs in WEB-INF/lib, and the context param:
    <context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
    </context-param>
    JSF pages seem to work but I'd rather have a clean startup. Please assist. Thx in advance.

    Thx for replying.
    I have jstl-1.2.jar:
         <dependency>
                   <groupId>javax.servlet</groupId>
                   <artifactId>jstl</artifactId>
                   <version>1.2</version>
    <scope>provided</scope>
              </dependency>
    Which version numbers are you referring to in *.xml? The following?
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">
    <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
    version="2.0">

  • Error when trying to open a WEBI report with OpenDocument.jsp

    I have a weird problem, i'm trying to open a WEBI report with OpenDocument.jsp and I get the following error message
    An error has occurred: Could not find the document.
    the weird thing is that this error only occurs when i use Internet Explorer.  When i use the same link with Google Chrome, i see my report.
    How do I make this work, our standard web browser is Internet explorer.
    here is a sample link i use to call my report.
    http://<server>:8080/OpenDocument/opendoc/openDocument.jsp?iDocID=AVGrgQALGJZGipKCfjPPZ3g&sIDType=CUID
    Our BO environment is :
    BO XI 3.1 sp2 fp 2.3
    tomcat 5.5 front-end

    Hi,
    I don't know how much this solution will help you but it is worth trying.
    SAP Note: 1198844
    [https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/sno/ui_entry/entry.htm?param=69765F6D6F64653D3030312669765F7361706E6F7465735F6E756D6265723D3131393838343426]
    Regards,
    Bashir Awan

  • Unable to update this object because the following attributes associated with this object have values that may already be associated with another object in your local directory services

    Getting this error from DirSync
    Unable to update this object because the following attributes associated with this object have values that may already be associated with another object in your local directory services: [UserPrincipalName
    [email protected];].  Correct or remove the duplicate values in your local directory.  Please refer to
    http://support.microsoft.com/kb/2647098 for more information on identifying objects with duplicate attribute values.
    Quick eyeball and couldn't see the cause in the user account so used the script here:
    http://gallery.technet.microsoft.com/office/Fix-Duplicate-User-d92215ef
    And got these outputs:
    PS C:\Windows\System32\WindowsPowerShell\v1.0> Export-OSCADUserPrincipalName -UserPrincipalName "[email protected]" -Path .\outputs.csv
    WARNING: Cannot find objects with specified duplicate user principal name
    [email protected]
    Found 0 user(s) with duplicate user principal name.
    Where to from here?
    Richard P

    Hi,
    Did you talk about the Microsoft Azure Active Directory Sync tool ?
    If yes, this issue occurs if one or more of the following conditions are true:
    An object in the on-premises Active Directory has an SMTP address that's the same as the SMTP address of the object that's reporting the problem.
    An object in the on-premises Active Directory has a mail attribute that's identical to the object that's reporting the problem.
    An object already exists in your organizational account and has the same SMTP address or mail attribute as the object in the on-premises Active Directory
    More detail information, please refer to:
    http://support.microsoft.com/kb/2520976/en-us
    [Troubleshooting] Unable to update this object because the following attributes associated with this object
    http://blogs.technet.com/b/aadsyncsupport/archive/2014/05/20/troubleshooting-unable-to-update-this-object-because-the-following-attributes-associated-with-this-object.aspx
    Regards.
    Vivian Wang

  • Java Webconsole ELResolvers for JSR not registered with the JSP container

    Trying to rebuild a LDAP server running Directory Server 6.1. Just installed Solaris 10 u9 on a SunFire V240. Loaded most recent recommended patch set dated 2011.02.02. Proceeded to load Directory Server V6.0 from native packages using JAVA ES Installer. After Directory Server installation and initialization the Java Webconsole is running but brings up a blank page login page. Note: Did not test the Webconsole prior to Directory Server installation. The errors in the /var/log/webconsole/console/console_debug_log file state:
    Feb 8, 2011 10:32:32 AM com.sun.faces.lifecycle.ELResolverInitPhaseListener populateFacesELResolverForJsp
    INFO: JSF1027: [console] The ELResolvers for JSF were not registered with the JSP container.
    Feb 8, 2011 10:32:34 AM com.sun.faces.lifecycle.Phase doPhase
    SEVERE: JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /jsp/login/BeginLogin.jsp) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@13c3b45]
    The JAVA version is: 1.6.0_22
    The cacao version is 2.2.4.1
    Kernel Patch is Generic_144488-06
    Anyone have an idea what is causing this problem for the JAVA webconsole and how to fix it?

    hi,
    it is tomcat-6.0.20, JSF-RI 2.0.2 (Mojarra)
    a whole bunch of libs and jquery4jsf (though really buggy in this manner, because all components could you rewrite for JSF2-components, etc.)
    Unfortunately it is somehow a config error, because i haven't got it earlier, since i changed PhaseListener and Authentification with JAAS (sample from Ed Burns:
    http://weblogs.java.net/blog/2006/03/07/repost-using-jaas-jsf, but with JDBC-based authentification)
    cheers,
    Istvan

  • How Can i use Html frames with  simple JSP???

    How Can i use Html frames with simple JSP???
    Actually i am creating an application in which i have used Index.html as frame.
    Noew i am trying that if i click on a link of one frame(say menu frame) the \result shoul come to some other frame(say frame named mainwindow).
    Hoe can i do like this???
    Anand Pritam

    Well i am using..
    < Base target="mainwindow">
    But it is no working is there some other way??

  • UIX/JSP - How to use the UIX Controller with UIX/JSP

    After reading the UIX Developers Guide I am under the impression that I could use the UIX Controller with UIX/JSP pages. Is this correct and are there any available examples?
    Bill G...

    It's correct, but I'm afraid we don't have much (read as "any")
    documentation on how to do that - besides reading through the
    gobs of Javadoc and guessing how to put it together.
    Half of the problem is solved by registering JspPageDescriptions
    on a PageBroker (e.g., UIXPageBroker) to tell the UIX Controller
    to use a JSP to render a particular page, instead of a UIX XML
    document.
    The other half is getting the JSP to send requests back to
    the UIX Controller. Depending on how you've chosen to name
    your pages, create either a DefaultPageEncoder or ExtensionPageEncoder
    inside your JSP, and use that to create destination URLs.

  • Error while populating drop down list with values from a database

    Hi all,
    I have a JSP page with a drop down list that is to be populated with values from a database.
    This is the code in my JSP file:
         <!-- Form for picking the floor -->
             <!-- Get the available floors -->
             <% ArrayList<Integer> floornumbers = dataManager.getAllFloorNumbers();
                Iterator<Integer> iterator = floornumbers.iterator(); %>
             <!-- Create the form for users to select the floor -->
             <form id="floorselectionform">
                  <input type="hidden" name="action" value="floorselected"/> <!-- Guides the servlet to redirect to the appropriate page -->
                  Select floor | <select name="floorselector" id="floorselector">
                       <% while (iterator.hasNext()) { %>
                       <option value="<%=iterator.next().intValue()%>"> <%=iterator.next().intValue()%> </option>
                       <% } %>
                  </select>
                  <input type="submit" value="Go!"/>
             </form>   The DataManager.java class simply forwards this to its respective Peer class, which has the code shown below:
          package seatplanner.model;
        import java.sql.Connection;
        import java.sql.ResultSet;
        import java.sql.SQLException;
        import java.sql.Statement;
        import java.util.ArrayList;
        /* This class handles all floor operations */
         public class FloorPeer
         /* This method returns all the floor numbers */
         public static ArrayList<Integer> getAllFloorNumbers(DataManager dataManager) {
            ArrayList<Integer> floornumbers = new ArrayList<Integer>();
            Connection connection = dataManager.getConnection();
            if (connection != null) {
              try {
                Statement s = connection.createStatement();
                String sql = "select ID from floor order by ID asc";
                try {
                  ResultSet rs = s.executeQuery(sql);
                  try {
                    while (rs.next()) {
                      floornumbers.add(rs.getInt(1));
                  finally { rs.close(); }
                finally {s.close(); }
              catch (SQLException e) {
                System.out.println("Could not get floor numbers: " + e.getMessage());
              finally {
                dataManager.putConnection(connection);
            return floornumbers;
         }  The classes compile properly, but when I load this page up in Tomcat it just freezes and does not load the form. I tested the DB connection and it works fine.
    What am I doing wrong in the JSP code?
    Thanks for the help in advance.
    UPDATE: I commented out the form, and added <%=floornumbers.size()%> right above the commented code to check if the ArrayList is indeed getting populated with the values from the database (the values are of type integer in the database). The page still freezes like before. I'm puzzled now :confused: .

    Wrong usage of Iterator.
    <!-- Form for picking the floor -->
             <!-- Get the available floors -->
             <% ArrayList<Integer> floornumbers = dataManager.getAllFloorNumbers();
                Iterator<Integer> iterator = floornumbers.iterator(); %>
             <!-- Create the form for users to select the floor -->
             <form id="floorselectionform">
                  <input type="hidden" name="action" value="floorselected"/> <!-- Guides the servlet to redirect to the appropriate page -->
                  Select floor | <select name="floorselector" id="floorselector">
                       <% while (iterator.hasNext()) {
                                    Integer inte = iterator.next();
                            %>
                       <option value="<%=inte.intValue()%>"><%=inte.intValue()%></option>
                       <% } %>
                  </select>
                  <input type="submit" value="Go!"/>
             </form>or make use of enhanced loop as you are already using J2SE 5.0+ for avoiding confusions.
    <!-- Form for picking the floor -->
             <!-- Get the available floors -->
             <% ArrayList<Integer> floornumbers = dataManager.getAllFloorNumbers(); %>
             <!-- Create the form for users to select the floor -->
             <form id="floorselectionform">
                  <input type="hidden" name="action" value="floorselected"/> <!-- Guides the servlet to redirect to the appropriate page -->
                  Select floor | <select name="floorselector" id="floorselector">
                       <% for(Integer inte:floornumbers) {%>
                       <option value="<%=inte.intValue()%>"><%=inte.intValue()%></option>
                       <%}%>
                  </select>
                  <input type="submit" value="Go!"/>
             </form>and a lot better thing would be making usage of basic Taglib provided with JSTL spec or struts spec which make life easier and simple.
    something like usage of <c:forEach/> or <logic:iterate/> would be lot better without writing a single scriptlet code.
    Hope that might help :)
    REGARDS,
    RaHuL

  • A function instead of UNBOUNDED PRECEDING (like "Last field with value=0")

    Hello,
    I have a table with many rows. The attributes of the table are code, month and value.
    For each code there are 12 months and 12 values.
    No I want to add the gaps between the months...
    Is it possible to count the following gaps between the different rows...?
    For example:
    Original table1:_
    code, month, value
    1,1,20
    1,2,0
    1,3,30
    1,4,0
    1,5,40
    1,6,0
    1,7,0
    1,8,20
    1,9,0
    1,10,10
    1,11,0
    1,12,0
    5,1,0
    5,2,20
    5,3,10
    description:*
    january value = 20
    february value = 0 (=>count this gap => new value 1 )
    march value = 30
    april value = 0 (=>count this gap => new value 1 )
    may value = 40
    june value = 0
    july value = 0 (=>count this two following gaps => new value 2 )
    agust value = 20
    september value = 0 (=>count this gap => new value 1 )
    october value = 10
    november value = 0
    december value = 0 (=>count this two following gaps => new value 2 )
    New target table:_
    code, month, value
    1,1,20
    1,2,*1*
    1,3,30
    1,4,*1*
    1,5,40
    1,6,0
    1,7,*2*
    1,8,20
    1,9,*1*
    1,10,10
    1,11,0
    1,12,*2*
    5,1,*1*
    5,2,20
    5,3,10
    I tried this code:
    select code, month
    sum(value) over (
    order by month
    rows between unbounded preceding and current row
    *) as final_value*
    from table1 order by month;
    This adds all following fields cumulative from beginning to current_row. But I need this adding only for the following gaps... then start with countin by 0.
    I need only the following like in the example on top. Maybe is there an other function like decode to count only the following gaps...!?
    A function instead of unbounded preceding....like "*Last field with value=0*" or something... ?
    Best regards,
    Tim

    TimB83 wrote:
    I have a table with many rows. The attributes of the table are code, month and value.
    For each code there are 12 months and 12 values.
    No I want to add the gaps between the months...
    Is it possible to count the following gaps between the different rows...?
    For example:
    Original table1:_
    code, month, value
    1,1,20
    1,2,0
    1,3,30
    1,4,0
    1,5,40
    1,6,0
    1,7,0
    1,8,20
    1,9,0
    1,10,10
    1,11,0
    1,12,0
    5,1,0
    5,2,20
    5,3,10
    description:*
    january value = 20
    february value = 0 (=>count this gap => new value 1 )
    march value = 30
    april value = 0 (=>count this gap => new value 1 )
    may value = 40
    june value = 0
    july value = 0 (=>count this two following gaps => new value 2 )
    agust value = 20
    september value = 0 (=>count this gap => new value 1 )
    october value = 10
    november value = 0
    december value = 0 (=>count this two following gaps => new value 2 )
    New target table:_
    code, month, value
    1,1,20
    1,2,*1*
    1,3,30
    1,4,*1*
    1,5,40
    1,6,0
    1,7,*2*
    1,8,20
    1,9,*1*
    1,10,10
    1,11,0
    1,12,*2*
    5,1,*1*
    5,2,20
    5,3,10
    ...Tim,
    you should post this question on the "SQL and PL/SQL" forum since it's a typical SQL question.
    There are probably much better ways to accomplish this and the guys over there will tell you, but here are two examples that might get you started:
    1. Pre-10g without MODEL clause
    with t as (
    select 1 as code, 1 as month, 20 as value from dual union all
    select 1 as code, 2 as month, 0 as value from dual union all
    select 1 as code, 3 as month, 30 as value from dual union all
    select 1 as code, 4 as month, 0 as value from dual union all
    select 1 as code, 5 as month, 40 as value from dual union all
    select 1 as code, 6 as month, 0 as value from dual union all
    select 1 as code, 7 as month, 0 as value from dual union all
    select 1 as code, 8 as month, 20 as value from dual union all
    select 1 as code, 9 as month, 0 as value from dual union all
    select 1 as code, 10 as month, 10 as value from dual union all
    select 1 as code, 11 as month, 0 as value from dual union all
    select 1 as code, 12 as month, 0 as value from dual union all
    select 5 as code, 1 as month, 0 as value from dual union all
    select 5 as code, 2 as month, 20 as value from dual union all
    select 5 as code, 3 as month, 10 as value from dual
    r1 as (
    select
            case
            when value = 0
            then 1
            else 0
            end as is_gap
          , case
            when value != 0
            then rownum
            else null
            end as grp_info
          , code
          , month
          , value
    from
            t
    r2 as (
    select
            last_value(grp_info ignore nulls) over (partition by code order by month) as grp
          , is_gap
          , code
          , month
          , value
    from
            r1
    select
            code
          , month
          , case
            when value = 0
            and (lead(value) over (partition by code order by month) != 0 or
                 lead(value) over (partition by code order by month) is null)
            then sum(is_gap) over (partition by code, grp)
            else value
            end as value
    from r2;2. 10g and later with MODEL clause
    with t as (
    select 1 as code, 1 as month, 20 as value from dual union all
    select 1 as code, 2 as month, 0 as value from dual union all
    select 1 as code, 3 as month, 30 as value from dual union all
    select 1 as code, 4 as month, 0 as value from dual union all
    select 1 as code, 5 as month, 40 as value from dual union all
    select 1 as code, 6 as month, 0 as value from dual union all
    select 1 as code, 7 as month, 0 as value from dual union all
    select 1 as code, 8 as month, 20 as value from dual union all
    select 1 as code, 9 as month, 0 as value from dual union all
    select 1 as code, 10 as month, 10 as value from dual union all
    select 1 as code, 11 as month, 0 as value from dual union all
    select 1 as code, 12 as month, 0 as value from dual union all
    select 5 as code, 1 as month, 0 as value from dual union all
    select 5 as code, 2 as month, 20 as value from dual union all
    select 5 as code, 3 as month, 10 as value from dual
    select
             code
           , month
           , value
    from
             t
    model
    partition by (code)
    dimension by (month)
    measures (value, 0 as gap_cnt)
    rules (
      gap_cnt[any] order by month =
      case
      when value[cv() - 1] = 0
      then gap_cnt[cv() - 1] + 1
      else 0
      end,
      value[any] order by month =
      case
      when value[cv()] = 0 and presentv(value[cv() + 1], value[cv() + 1], 1) != 0
      then presentv(gap_cnt[cv() + 1], gap_cnt[cv() + 1], gap_cnt[cv()] + 1)
      else value[cv()]
      end
    );Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Create xml file with values from context

    Hi experts!
    I am trying to implement a WD application that will have some input fields, the value of those input fields will be used to create an xml file with a certain format and then sent to a certain application.
    Apart from this i want to read an xml file back from the application and then fill some other context nodes with values from the xml file.
    Is there any standard used code to do this??
    If not how can i do this???
    Thanx in advance!!!
    P.S. Points will be rewarded to all usefull answers.
    Edited by: Armin Reichert on Jun 30, 2008 6:12 PM
    Please stop this P.S. nonsense!

    Hi,
    you need to create three util class for that:-
    XMLHandler
    XMLParser
    XMLBuilder
    for example in my XML two tag item will be there e.g. Title and Organizer,and from ur WebDynpro view you need to pass value for the XML tag.
    And u need to call buildXML()function of builder class to generate XML, in that i have passed bean object to get the values of tags. you need to set the value in bean from the view ui context.
    Code for XMLBuilder:-
    Created on Apr 4, 2006
    Author-Anish
    This class is to created for having function for to build XML
    and to get EncodedXML
      and to get formated date
    package com.idb.events.util;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import com.idb.events.Event;
    public class XMLBuilder {
    This attribute represents the XML version
         private static final double VERSION_NUMBER = 1.0;
    This attribute represents the encoding
         private static final String ENCODING_TYPE = "UTF-16";
         /*Begin of Function to buildXML
    return: String
    input: Event
         public String buildXML(Event event) {
              StringBuffer xmlBuilder = new StringBuffer("<?xml version=\"");
              xmlBuilder.append(VERSION_NUMBER);
              xmlBuilder.append("\" encoding=\"");
              xmlBuilder.append(ENCODING_TYPE);
              xmlBuilder.append("\" ?>");
              xmlBuilder.append("<event>");
              xmlBuilder.append(getEncodedXML(event.getTitle(), "title"));
              xmlBuilder.append(getEncodedXML(event.getOrganizer(), "organizer"));
              xmlBuilder.append("</event>");
              return xmlBuilder.toString();
         /End of Function to buildXML/
         /*Begin of Function to get EncodedXML
    return: String
    input: String,String
         public String getEncodedXML(String xmlString, String tag) {
              StringBuffer begin = new StringBuffer("");
              if ((tag != null) || (!tag.equalsIgnoreCase("null"))) {
                   begin.append("<").append(tag).append(">");
                   begin.append("<![CDATA[");
                   begin.append(xmlString).append("]]>").append("</").append(
                        tag).append(
                        ">");
              return begin.toString();
         /End of Function to get EncodedXML/
         /*Begin of Function to get formated date
    return: String
    input: Date
         private final String formatDate(Date inputDateStr) {
              String date;
              try {
                   SimpleDateFormat simpleDateFormat =
                        new SimpleDateFormat("yyyy-MM-dd");
                   date = simpleDateFormat.format(inputDateStr);
              } catch (Exception e) {
                   return "";
              return date;
         /End of Function to get formated date/
    Code for XMLParser:-
    Created on Apr 12, 2006
    Author-Anish
    This is a parser class
    package com.idb.events.util;
    import java.io.ByteArrayInputStream;
    import java.io.IOException;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;
    import org.xml.sax.XMLReader;
    import com.idb.events.Event;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    public class XMLParser {
    Enables namespace functionality in parser
         private final boolean isNameSpaceAware = true;
    Enables validation in parser
         private final boolean isValidating = true;
    The SAX parser used to parse the xml
         private SAXParser parser;
    The XML reader used by the SAX parser
         private XMLReader reader;
    This method creates the parser to parse the user details xml.
         private void createParser()
              throws SAXException, ParserConfigurationException {
              // Create a JAXP SAXParserFactory and configure it
              SAXParserFactory saxFactory = SAXParserFactory.newInstance();
              saxFactory.setNamespaceAware(isNameSpaceAware);
              saxFactory.setValidating(isValidating);
              // Create a JAXP SAXParser
              parser = saxFactory.newSAXParser();
              // Get the encapsulated SAX XMLReader
              reader = parser.getXMLReader();
              // Set the ErrorHandler
    This method is used to collect the user details.
         public Event getEvent(
              String newsXML,
              XMLHandler xmlHandler,
              IWDMessageManager mgr)
              throws SAXException, ParserConfigurationException, IOException {
              //create the parser, if not already done
              if (parser == null) {
                   this.createParser();
              //set the parser handler to extract the
              reader.setErrorHandler(xmlHandler);
              reader.setContentHandler(xmlHandler);
              InputSource source =
                   new InputSource(new ByteArrayInputStream(newsXML.getBytes()));
              reader.parse(source);
              //return the results of the parse           
              return xmlHandler.getEvent(mgr);
    Code for XMLHandler:-
    Created on Apr 12, 2006
    Author-Anish
    This is a parser class
    package com.idb.events.util;
    import java.io.ByteArrayInputStream;
    import java.io.IOException;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.parsers.SAXParser;
    import javax.xml.parsers.SAXParserFactory;
    import org.xml.sax.InputSource;
    import org.xml.sax.SAXException;
    import org.xml.sax.XMLReader;
    import com.idb.events.Event;
    Created on Apr 12, 2006
    Author-Anish
    *This handler class is created to have constant value for variables and function for get events,
        character values for bean variable,
        parsing thr date ......etc
    package com.idb.events.util;
    import java.sql.Timestamp;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.Locale;
    import org.xml.sax.Attributes;
    import org.xml.sax.SAXException;
    import org.xml.sax.SAXParseException;
    import org.xml.sax.helpers.DefaultHandler;
    import java.util.*;
    import com.idb.events.Event;
    import com.sap.tc.webdynpro.progmodel.api.IWDMessageManager;
    public class XMLHandler extends DefaultHandler {
         private static final String TITLE = "title";
         private static final String ORGANIZER = "organizer";
         IWDMessageManager manager;
         private Event events;
         private String tagName;
         public void setManager(IWDMessageManager mgr) {
              manager = mgr;
    This function is created to get events
         public Event getEvent(IWDMessageManager mgr) {
              manager = mgr;
              return this.events;
    This function is created to get character for setting values through event's bean setter method
         public void characters(char[] charArray, int startVal, int length)
              throws SAXException {
              String tagValue = new String(charArray, startVal, length);
              if (TITLE.equals(this.tagName)) {
                   this.events.setTitle(tagValue);
              if (ORGANIZER.equals(this.tagName)) {
                   String orgName = tagValue;
                   try {
                        orgName = getOrgName(orgName);
                   } catch (Exception ex) {
                   this.events.setOrganizer(orgName);
    This function is created to parse boolean.
         private final boolean parseBoolean(String inputBooleanStr) {
              boolean b;
              if (inputBooleanStr.equals("true")) {
                   b = true;
              } else {
                   b = false;
              return b;
    This function is used to call the super constructor.
         public void endElement(String uri, String localName, String qName)
              throws SAXException {
              super.endElement(uri, localName, qName);
         /* (non-Javadoc)
    @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)
    This function is used to call the super constructor.
         public void fatalError(SAXParseException e) throws SAXException {
              super.fatalError(e);
    This function is created to set the elements base on the tag name.
         public void startElement(
              String uri,
              String localName,
              String qName,
              Attributes attributes)
              throws SAXException {
              this.tagName = localName;
              if (ROOT.equals(tagName)) {
                   this.events = new Event();
         public static void main(String a[]) {
              String cntry = "Nigeria";
              XMLHandler xml = new XMLHandler();
              ArrayList engList = new ArrayList();
              engList = xml.getCountries();
              ArrayList arList = xml.getArabicCountries();
              int engIndex = engList.indexOf(cntry);
              System.out.println("engIndex  :: " + engIndex);
              String arCntryName = (String) arList.get(engIndex);
              System.out.println(
                   ">>>>>>>>>>>>>>>>>>>>" + xml.getArabicCountryName(cntry));
    Hope that may help you.
    If need any help , you are most welcome.
    Regards,
    Deepak

Maybe you are looking for

  • Review etresoft data

    I have a 2011 MacBook Pro that has, over time, become slower and clunkier.  I ran EtreCheck but need some help deciphering the results.  I've pasted them below. Any suggestions are appreciated. EtreCheck version: 2.0.11 (98) Report generated November

  • How to make these graphics from a flash game (link supplied)

    http://marketplace.tutsplus.com/item/design-and-develop-a-flash-shooting-gallery-game/full _screen_preview/132245 Hi - I have seen this game and I like the shooter cross hair and the letters - enter your name - just wondering how you create them. I'm

  • How to divide the CRM transaction data by company cord?

    How to divide the CRM transaction data by company cord? CRM transaction have not company cord, so how to divide the data on BI report by company cord? Do I have to get the sales organization from customer master? Some transactions have not master dat

  • Not enough memory to complete operation when writing TDMS file.

    Hello,    I am new to Labview and having a bit of trouble. I attach some code here. What I want to do is sample from a NI 9220 DAQ from 16 channels at 20kHz, while from a second NI 6009 sample from 4 channels at 1000 kHz. I want to append these toget

  • KM Document iView - Internet Explorer Error

    Hi All, I have uploaded word docs to KM and then proceeded to create KM Doc iViews which link to the word docs. When I preview the iView i get a dialog box asking me whether I want to open, save or cancel. If I click either open or save I get an inte