Struts web xml
Hi there,
I want to define my own error pages. Someone told me that it's possible to define them in web.xml
I use this somewhere in my code:
response.sendError(HttpServletResponse.SC_UNAUTHORIZED);
I want to keep this, but I want to make my own styled page.
Can someone help me?
in your web.xml for each error
<error-page>
<error-code>404 (500,...)</error-code>
<location>anurlto your custom page </location>
</error-page>
Similar Messages
-
How can I get the context-parm from a web.xml file using struts?
Hello:
I need get the context-param from the web.xml file of my web project using struts. I want configurate the jdbc datasource connection pooling here. For example:
<context-param>
<param-name>datasource</param-name>
<param-value>jdbc/formacion</param-value>
<description>Jdbc datasource</description>
</context-param>
and then from any Action class get this parameter.
Similar using a simple server can be:
/** Initiates new XServlet */
public void init(ServletConfig config) throws ServletException {
for (Enumeration e = config.getInitParameterNames(); e.hasMoreElements();) {
System.out.println(e.nextElement());
super.init(config);
String str = config.getInitParameter("datasource");
System.out.println(str);
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
// res.setContentType( );
System.out.println("Got post request in XServlet");
PrintWriter out = res.getWriter();
out.println("nada");
out.flush();
out.close();
but only this works for init-params, if I use
<servlet>
<servlet-name>MyServlet</servlet-name>
<display-name>MyServlet</display-name>
<servlet-class>myExamples.servlet.MyServlet</servlet-class>
<init-param>
<param-name>datasource</param-name>
<param-value>jdbc/formacion</param-value>
</init-param>
</servlet>
inside my web.xml. I need something similar, but using struts inside the action class for that I can get the context-params and call my database.
Thank youTo get context parameters from your web.xml file you can simply get the ActionServlet object from an implementing action object class. In the perform (or execute) method make the following call.
ServletContext context = getServlet().getServletContext();
String tempContextVar =
context.getInitParameter("<your context param >"); -
Web.xml, struts and ssl
Hi there,
on our projects web pages we use struts, to combine the html of our pages with the java code behind. To enable SSL I added a security constraint to the web.xml:
<security-constraint>
<display-name>SSL Constraint</display-name>
<web-resource-collection>
<web-resource-name>secured login resource</web-resource-name>
<description></description>
<url-pattern>/index.html</url-pattern>
<url-pattern>*.do</url-pattern>
<http-method>GET</http-method>
<http-method>PUT</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<description></description>
<role-name>authenticatedUser</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint> Some of our web pages need to use no SSL. So I added (for first testing) a second security constraint to the web.xml and defined which pages should be without SSL:
<security-constraint>
<display-name>No-SSL Constraint</display-name>
<web-resource-collection>
<web-resource-name>businesstransaction resource</web-resource-name>
<description></description>
<url-pattern>*.go</url-pattern>
<http-method>GET</http-method>
<http-method>PUT</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<description></description>
<role-name>authenticatedUser</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>As you can see, I exchanged *.do with *.go for testing. I simply defined all actions I want to be used without SSL with a .go instead of a .do in the struts.config.
In principle it works, but there is a problem: The default behaviour for struts seems to be that the name of the new action is posted in the url at the end of the standard starting url.
Our url starts with https://localhost:9443/client-web/, and whatever action I start, this url text in the browser window never changes, regardless of wether the next action would be protected or not.
First I thought my url pattern would be wrong, or the user or whatever. But then I found out, that when changing the url in the browser window by hand to http://localhost:9080/client-web/ it works. The web page then is without SSL active. And when I manually change the url while viewing a page that is meant to be SSL protected, the browser automatically changes to the SSL adress.
But then again, moving to a page without SSL does not enforce the browser to change its adress to the no SSL String. So again, SSL is active though a non secure access would be allowed.
Anybody has any idea how to change this default behaviour? It would be important to not only tell the server that non secure would be ok, but to actually USE non secure connection automatically.
The internet explorer is not able to upload files in SSL mode (though any other browser is able to), and our customer insists on using IE. And to tell the users "oh, just edit the line there in the window manually and reload the page will help ... or use Firefox" will not be a suitable solution.
Regards, Rommie.There is a plugin called sslext which will do most of what you need.
http://sslext.sourceforge.net/
I think the last time I used it I made some changes to the plugin source so that I could force non-ssl to be the default behavour unless SSL was explictily stated in struts.config, but can't remember for sure. Bottom line is it will do most of what you need and can probably be modified to do the rest without too much trouble. -
Web.xml security configuration (struts)
Hi all
i want to restrict the access for the following URL:
http://localhost:8080/InventoryManager/Usermanagement/addUser.do?methodToCall=addInvUser
But if i define it like that in web.xml it doesn't work:
<security-constraint>
<display-name>User</display-name>
<web-resource-collection>
<web-resource-name>user creation</web-resource-name>
<url-pattern>/Usermanagement/addUser.do?methodToCall=addInvUser*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>create_user</role-name>
</auth-constraint>
</security-constraint>
All other restrictions i created to far are working, but mostly this is restricted for a URL and not a struts action like above.
Could somebody tell me how i can restrict the access to the method addInvUser or the action mapping addUser.do ?
Thanks
AngelaPerhaps it's not possible (to use HTTP params) as a restricted URL.
But you can always chek user role programmatically.
best regards,
Maris Orbidans
SCJP SCWCD SCBCD -
Opening struts-config/ web.xml with Internet explorer
Hi,
I m facing a problem if i m tryin to open struts-config.xml or any other xml file using internet explorer.
Following is the error which i got:
The XML page cannot be displayed
Cannot view XML input using style sheet. Please correct the error and then click the Refresh button, or try again later.
The system cannot locate the resource specified. Error processing resource 'http://jakarta.apache.org/struts/dtds/struts-co...
Please help me in finding the solution for this.
Thanks in Advance.hi
I think your IE's security settings are causing this error. If you check
Internet options -> Security, you'll see an option
"access data sources across domains". Enable this option and try once again. -
Hi ,
Earlier my application was running fine on JBOSS 5.0 .
In that web.xml was like
<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_4.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_4.xsd"
id="WebApp_ID" version="2.4">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Timer Details -->
<servlet>
<servlet-name>perfMonCollector</servlet-name>
<servlet-class>com.dbag.optimise.performancemonitor.timer.PerfMonitorCollector</servlet-class>
<load-on-startup>4</load-on-startup>
<init-param>
<param-name>cronExpr</param-name>
<param-value>0 0 0 */1 * ?</param-value>
<!--<param-value>0 */10 * * * ?</param-value> -->
</init-param>
</servlet>
<servlet>
<servlet-name>TransAnalysisCollector</servlet-name>
<servlet-class>com.dbag.optimise.performancemonitor.timer.TransAnalysisCollector</servlet-class>
<load-on-startup>3</load-on-startup>
<init-param>
<param-name>cronExprTransAnalysis</param-name>
<param-value>*/30 * * * * ?</param-value>
</init-param>
</servlet>
<!-- Timer Details -->
<!-- PerfMonPoints Cache Generation on Server Startup -->
<servlet>
<servlet-name>perfMonGenerator</servlet-name>
<servlet-class>com.dbag.optimise.performancemonitor.timer.PerfMonPointsGenerator</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<!-- PerfMonPoints Cache Generation on Server Startup -->
<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- The Usual Welcome File List -->
<welcome-file-list>
<welcome-file>jsp/index.jsp</welcome-file>
</welcome-file-list>
But now i have deployed my application on JBOSS 5.1 GA version.
Now its giving exception.
Caused by:
org.xml.sax.SAXException: cvc-complex-type.2.4.a: Invalid content was found starting with element 'init-param'. One of '{"http://java.sun.com/xml/ns/javaee":run-as, "http://java.sun.com/xml/ns/javaee":security-role-ref}' is expected. @ vfsfile:/local/dubeavi/jboss-5.1.0.GA/server/default/deploy/PerformanceMonitoringISE-1.0/WEB-INF/web.xml[28,15]
at org.jboss.xb.binding.parser.sax.SaxJBossXBParser$MetaDataErrorHandler.error(SaxJBossXBParser.java:426)
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.handleStartElement(Unknown Source)
at org.apache.xerces.impl.xs.XMLSchemaValidator.startElement(Unknown Source)
at org.apache.xerces.xinclude.XIncludeHandler.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at org.jboss.xb.binding.parser.sax.SaxJBossXBParser.parse(SaxJBossXBParser.java:199)
... 41 moreMy new web.xml is like..
<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"
id="WebApp_ID"
version="2.5">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet> -
How to configure for struts-config.xml
Hi
I am having a JSp which is Mapped to anothr action through the registration.The registartion is mapped to action
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page import="org.apache.struts.validator.ValidatorPlugIn" session="true" %>
<%@ page import="org.apache.struts.Globals" %>
<%@ taglib uri="/tags/struts-bean" prefix="bean" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
<html:html locale="true">
<head>
<title><bean:message key="index.title"/></title>
<html:base/>
</head>
<body bgcolor="white">
<logic:notPresent name="<%= Globals.MESSAGES_KEY %>" >
<font color="red">
ERROR: Application resources not loaded -- check servlet container
logs for error messages.
</font>
</logic:notPresent>
<%-- :TODO: Need code to do this with moudles
<logic:notPresent name="<%= ValidatorPlugIn.VALIDATOR_KEY %>" >
<font color="red">
ERROR: Validator resources not loaded -- check Commons Logging
logs for error messages.
</font>
</logic:notPresent>
--%>
<h3><bean:message key="registrationForm.title"/>1222AAAAAAAAAAAAA</h3>
<ul>
<li><html:link action="Test.jsp">Test212121.jsp</html:link >
<li><html:link action="/registration"><bean:message key="registrationForm.title"/></html:link></li>
<%System.out.println("hellooooooooooooo");%>
<!-- :TODO: Should have a non-JaveScript message-by-field example -->
<li>
<html:link action="/jsRegistration"><bean:message key="jsRegistrationForm.title"/></html:link> -
<bean:message key="jsRegistrationForm.description"/>
</li>
<li>
<html:link action="/multiRegistration"><bean:message key="multiRegistrationForm.title"/></html:link> -
<bean:message key="multiRegistrationForm.description"/>
</li>
</ul>
<a href="registration.jsp">Registration Test</a>
<p> </p>
<h3><bean:message key="typeForm.title"/></h3>
<ul>
<li>
<html:link action="/type"><bean:message key="typeForm.title"/></html:link> -
<bean:message key="typeForm.description"/>
</li>
<li>
<html:link action="/editJsType"><bean:message key="jsTypeForm.title"/></html:link> -
<bean:message key="jsTypeForm.description"/>
</li>
</ul>
<p> </p>
<h3>Change Language | Changez Le Langage</h3>
<ul>
<li><html:link action="/locale?language=en">English | Anglais</html:link></li>
<li>
<html:link action="/locale?language=fr">French | Francais</html:link> -
<bean:message key="localeForm.fr"/>
</li>
<li>
<html:link action="/locale?language=fr&country=CA">French Canadian | Francais Canadien</html:link> -
<bean:message key="localeForm.frCA"/>
</li>
<li>
<html:link action="/locale?language=ja" useLocalEncoding="true">Japanese | Japonais</html:link> -
<bean:message key="localeForm.ja"/>
</li>
</ul>
<p> </p>
==============struts-config.xml=================\<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<!--============================================== Form Bean Definitions -->
<form-beans>
<!-- Registration form bean -->
<form-bean name="registrationForm" type="validator.RegistrationForm" />
<!-- Multi-Part Registration form bean -->
<form-bean name="multiRegistrationForm" type="validator.RegistrationForm" />
<!-- Type form bean -->
<form-bean name="typeForm" type="validator.TypeForm" />
<!-- JavaScript Type form bean -->
<form-bean name="jsTypeForm" type="validator.TypeForm" />
</form-beans>
<!-- ======================================== Global Forward Definitions -->
<global-forwards>
<forward name="home" path="/index.jsp" />
</global-forwards>
<!-- ========================================= Action Mapping Definitions -->
<action-mappings>
<action path="/welcome" forward="/index.jsp" />
<!-- Registration Action
-->
<forward name="registration" path="/registration.do" /> //// ==========>here it is mapped
<action path="/registration" forward="/registration.jsp" />
<action path="/registration-submit" type="validator.RegistrationAction" name="registrationForm" scope="request" validate="true" input="input">
<forward name="input" path="/registration.do" />
<forward name="success" path="/index.jsp" />
</action>
<action path="/jsRegistration" forward="/jsRegistration.jsp" />
<!-- Multi-Part Registration Action -->
<action path="/multiRegistration" forward="/multiRegistration1.jsp" />
<action path="/multiRegistration-submit" type="validator.MultiRegistrationAction" name="multiRegistrationForm" scope="request" validate="false">
<forward name="success" path="/welcome.do" />
<forward name="input1" path="/multiRegistration1.jsp" />
<forward name="input2" path="/multiRegistration2.jsp" />
</action>
<!-- Type Action -->
<action path="/type" forward="/type.jsp" />
<action path="/type-submit" type="validator.TypeAction" name="typeForm" scope="request" validate="true" input="input">
<forward name="input" path="/type.do" />
<forward name="success" path="/welcome.do" />
</action>
<!-- JavaScript Type Action -->
<action path="/editJsType" type="validator.EditTypeAction" scope="request" validate="false">
<forward name="success" path="/jsType.do" />
</action>
<action path="/jsType" forward="/jsType.jsp" />
<action path="/jsType-submit" type="validator.TypeAction" name="jsTypeForm" scope="request" validate="true" input="input">
<forward name="input" path="/editJsType-submit.do?typeForm.reset=false" />
<forward name="success" path="/welcome.do" />
</action>
<!-- Locale Action -->
<action path="/locale" type="validator.LocaleAction" name="localeForm" scope="request">
<forward name="success" path="/welcome.do" />
</action>
</action-mappings>
<!-- ============================================= Controller Definition -->
<controller inputForward="true" />
<!-- ===================================== Message Resources Definitions -->
<message-resources parameter="validator.MessageResources" />
<!-- ============================================ Plug Ins Configuration -->
<!--
Add multiple validator resource files by setting the pathnames property
with a comma delimitted list of resource files to load.
-->
<plug-in className="validator.ValidatorPlugIn">
<set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validator/validation.xml" />
<set-property property="stopOnFirstError" value="true" />
</plug-in>
</struts-config>
<html:img page="/struts-power.gif" altKey="index.powered"/>
</body>
</html:html>Hey,
U can do it the way u want. Use DispatchAction Class instead of Action Class. Just go through the documentation for this. If u still have problem let me know.
Thanks
KM
Hi,
I am new to struts and when i am doing my application i find some >>difficulty i.e,
I have two buttons on a jsp page Save,Delete.when I click on >>save ,saveAction must be called.if we click delete deleteAction to be >>called.
for this how can I configure in struts-config.xml file. and how it >>knows which button has been clicked.
Can any one please guid me.
Thanks -
Hi.
Im trying to upgrade the weblogic version from 10 to 12 for my application.
Im getting below mentioned error while deploying ear file in weblogic 12 which works fine with version10.
" java.lang.IllegalArgumentException:[HTTP:101164] User defined class com.ab.util.session object is not a listener as it doesnt implement the correct interface."
Deployment is getting failed because of this error.
If i comment out listener, deployment is success.HI Timo,
Old Weblogic version: 10.3.3
New weblogic version:12.1.1
Using Struts frame work.
SessionObject class:
public class SessionObject implements HttpSessionBindingListener{
public void valueBound( HttpSessionBindingEvent event)
public voind valueUnbound (HttpSessionBindingEvent event)
web.xml:
<listener>
<listener-class>com.ab.util.SessionObject</listener-class>
<listener>
I want to know that why im getting " java.lang.IllegalArgumentException:[HTTP:101164] User defined class com.ab.util.session object is not a listener as it doesnt implement the correct interface" error while deploying the ear file under version 12.1.1 when it is working fine with version 10.3.3.
Should i make any changes in web.xml or should i include any jars??? -
Error regarding to the configuration of "Data Source" in Struts-config.xml
Hi,
Any 1 just help me out. I am using NetBeans 4.1 bundeled with Sun App server 8.1. Now I wanted to make the database connectivity with the front -end using"Data-source" tag in the struts-config.xml file . I am using the Oracle 9i as database.But I am not able to do it , it's showing me again and again error.I got realy fed up with this. I have checked the code as well as the the struts-config.xml file syntaxes with many other books and online resources, I couldn't find any sort of anomaly over here.So some 1 plzz help me regarding this as early as possible.I am attaching the Struts-config .xml file code as well as the error messaage over here.
Struts-config.xml file code is...
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<!-- ============================================ Data Source Configuration -->
<data-sources>
<data-source type="org.apache.commons.dbcp.BasicDataSource" key="RoseKey">
<set-property
property="driverClassName"
value="oracle.jdbc.driver.OracleDriver" />
<set-property
property="url"
value="jdbc:oracle:thin://10.31.8.49:1521:USGFS" />
<set-property
property="username"
value="EPTP2DEV" />
<set-property
property="password"
value="EPTP2DEV" />
<set-property
property="maxActive"
value="10" />
<set-property
property="maxWait"
value="5000" />
<set-property
property="defaultAutoCommit"
value="false" />
<set-property
property="defaultReadOnly"
value="false" />
<!--set-property
property="validationQuery"
value="SELECT COUNT(*) FROM address" /-->
</data-source>
</data-sources>
<!-- ======================================== Form Bean Definitions -->
<form-beans>
<form-bean
name="AddressForm"
type="app.AddressForm"/>
<form-bean
name="DVDForm"
type="app.DVD"/>
</form-beans>
<!-- =================================== Global Forward Definitions -->
<!--global-forwards>
<forward
name="logoff"
path="/Logoff.do"/>
<forward
name="logon"
path="/Logon.do"/>
<forward
name="welcome"
path="/Welcome.do"/>
</global-forwards-->
<!--global-forward>
<forward
name="Address1"
path="/pages/Address.jsp"/>
</global-forward-->
<!-- =================================== Action Mapping Definitions -->
<action-mappings>
<!--action
path="/Welcome"
type="org.apache.struts.actions.ForwardAction"
parameter="/pages/Welcome.jsp"/>
<action
path="/Logon"
type="org.apache.struts.actions.ForwardAction"
parameter="/pages/Logon.jsp"/-->
<action
path="/Address"
type="app.AddressAction"
name="AddressForm"
scope="request"
validate="true"
input="/pages/Address.jsp">
<forward
name="success"
path="/pages/success.jsp"/>
</action>
<action
path="/TestAction"
type="app.TestAction">
<forward
name="testAction"
path="/pages/TestAction.jsp"/>
</action>
<action
path="/TestDVD"
type="app.DVDAction"
name="DVDForm">
<forward
name="testDVD"
path="/pages/Movie.jsp"/>
</action>
<action
path="/DataSource"
type="app.TestDataSource">
<forward
name="joy"
path="/pages/joy.jsp"/>
</action>
</action-mappings>
<message-resources parameter="resources.ApplicationResources"/>
</struts-config>
And the error I am getting in the Server console is ..
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io exception: The Network Adapter could not establish the connection)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:855)
at org.apache.commons.dbcp.BasicDataSource.setLogWriter(BasicDataSource.java:598)
at org.apache.struts.action.ActionServlet.initModuleDataSources(ActionServlet.java:808)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:335)
at javax.servlet.GenericServlet.init(GenericServlet.java:261)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:118)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1093)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:931)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4183)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4536)
at com.sun.enterprise.web.WebModule.start(WebModule.java:241)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:827)
at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:125)
at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:147)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:809)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1279)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1006)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:160)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:238)
at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:918)
at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:905)
at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:427)
at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:139)
at com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:288)
at com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:155)
at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:258)
at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.java:87)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:71)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:633)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:361)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:396)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:702)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:302)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:357)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:272)
at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:38)
at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:92)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:69)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:767)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)
Caused by: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:333)
at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:404)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:468)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:314)
at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:877)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:851)
... 92 more
AND..
javax.servlet.UnavailableException: Initializing application data source RoseKey
at org.apache.struts.action.ActionServlet.initModuleDataSources(ActionServlet.java:812)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:335)
at javax.servlet.GenericServlet.init(GenericServlet.java:261)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:118)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1093)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:931)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4183)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4536)
at com.sun.enterprise.web.WebModule.start(WebModule.java:241)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:827)
at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:125)
at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:147)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:809)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1279)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1006)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:160)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:238)
at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:918)
at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:905)
at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:427)
at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:139)
at com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:288)
at com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:155)
at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:258)
at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.java:87)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:71)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:633)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:361)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:396)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:702)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:302)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:357)
at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:213)
at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:220)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:815)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:784)
at sun.reflect.GeneratedMethodAccessor22.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:272)
at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:38)
at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:92)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:69)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:767)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)
Plz some1 help me as soon as possible with some ideas so that I can resolve the issue.Hi Amit Garg,
<data-sources>
<data-source type = "org.apache.commons.dbcp.BasicDataSource" key = "DBA">
</data-source>
<data-sources>
<data-source type = "org.apache.commons.dbcp.BasicDataSource" key = "AISDEV">
</data-source>
</data-sources>
u just configure ur struts-config.xml file in the above manner and use the following steps in ur action servlet to retrive the DataSource object
getDatasource(request,"DBA") for accessing first datasource
getDatasource(request,"AISDEV") for accessing second datasource.
byeeeeee -
Agent filter location in web.xml for websphere v7.0
In the document:
Sun OpenSSO Enterprise Policy Agent 3.0 Guide for IBM WebSphere Application Server 6.1/7.0 and WebSphere Portal Server 6.1
I'm and tying to do this part:
Installing the Agent Filter for the WebSphere Application Server 6.1/7.0 Administration Console
for my WebSphere 7.0 installation.
My issue is the placement of the second filter.
<filter-mapping>
<filter-name>Agent</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
the doc says to put it under:
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<servlet-name>action</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<url-pattern>/federatedlogoff</url-pattern>
</filter-mapping>
however, my Websphere 7.0 web.xml does not have this section in the file.
Can some one assist me with proper placement?
here is the first few lines of my xml:
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="WebApp_1" version="2.4" xsi:schemaLocation="http://java.sun.co
m/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>isclite</display-name>
<filter>
<filter-name>WSCUrlFilter</filter-name>
<filter-class>com.ibm.ws.console.core.servlet.WSCUrlFilter</filter-class>
</filter>
<filter>
<filter-name>Trace_Tree_Cache_Init_Filter</filter-name>
<filter-class>com.ibm.ws.console.probdetermination.trace.tree.TraceTreeCacheInit</filter-class>
</filter>
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Trace_Tree_Cache_Init_Filter</filter-name>
<servlet-name>Trace Tree Servlet</servlet-name>
</filter-mapping>
<listener>
<listener-class>com.ibm.isclite.SessionListener</listener-class>
</listener>
<listener>
<listener-class>com.ibm.ws.console.appmanagement.SessionListener</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/config/struts-config.xml</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SecureCleanup</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.SecureCleanupServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>FederationServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.FederationServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ProfileSelectionServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.ProfileSelectionServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ConsoleCSS</servlet-name>
<jsp-file>secure/layouts/console_css.jsp</jsp-file>
</servlet>
<servlet>
<servlet-name>EventInitializer</servlet-name>
<servlet-class>com.ibm.ws.console.events.EventListenerServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>downloadFile</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.DownloadFileServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>StatusServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.StatusServlet</servlet-class>
</servlet>
<servlet>See below. You just have additional probe filters.
862059 wrote:
In the document:
Sun OpenSSO Enterprise Policy Agent 3.0 Guide for IBM WebSphere Application Server 6.1/7.0 and WebSphere Portal Server 6.1
I'm and tying to do this part:
Installing the Agent Filter for the WebSphere Application Server 6.1/7.0 Administration Console
for my WebSphere 7.0 installation.
My issue is the placement of the second filter.
<filter-mapping>
<filter-name>Agent</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
the doc says to put it under:
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<servlet-name>action</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<url-pattern>/federatedlogoff</url-pattern>
</filter-mapping>
however, my Websphere 7.0 web.xml does not have this section in the file.
Can some one assist me with proper placement?
here is the first few lines of my xml:
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="WebApp_1" version="2.4" xsi:schemaLocation="http://java.sun.co
m/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>isclite</display-name>
<filter>
<filter-name>WSCUrlFilter</filter-name>
<filter-class>com.ibm.ws.console.core.servlet.WSCUrlFilter</filter-class>
</filter>
<filter>
<filter-name>Trace_Tree_Cache_Init_Filter</filter-name>
<filter-class>com.ibm.ws.console.probdetermination.trace.tree.TraceTreeCacheInit</filter-class>
</filter>
<filter-mapping>
<filter-name>WSCUrlFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>Trace_Tree_Cache_Init_Filter</filter-name>
<servlet-name>Trace Tree Servlet</servlet-name>
</filter-mapping><filter-mapping>
<filter-name>Agent</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<listener>
<listener-class>com.ibm.isclite.SessionListener</listener-class>
</listener>
<listener>
<listener-class>com.ibm.ws.console.appmanagement.SessionListener</listener-class>
</listener>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/config/struts-config.xml</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>SecureCleanup</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.SecureCleanupServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>FederationServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.FederationServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ProfileSelectionServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.ProfileSelectionServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ConsoleCSS</servlet-name>
<jsp-file>secure/layouts/console_css.jsp</jsp-file>
</servlet>
<servlet>
<servlet-name>EventInitializer</servlet-name>
<servlet-class>com.ibm.ws.console.events.EventListenerServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet>
<servlet-name>downloadFile</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.DownloadFileServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>StatusServlet</servlet-name>
<servlet-class>com.ibm.ws.console.core.servlet.StatusServlet</servlet-class>
</servlet>
<servlet> -
error-page in web.xml not working
In my web.xml I have
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/error.jsp</location>
</error-page>
I checked the page works by doing a /context/error.jsp and
the page displays fine (it is a simple jsp page).
I hit a struts action that gives me this in the std output.
06/29 10:48:24 error
[1]java.lang.NullPointerException
at
com.pearson.gs.cms.business.LoginService.verifyPassword(LoginService.java:232)
at
com.pearson.gs.cms.action.LoginAction.performCMSAction(LoginAction.java:92)
at
com.pearson.gs.cms.action.BaseCMSAction.execute(BaseCMSAction.java:48)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:91)
at
jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at
jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:259)
at
jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:541)
at
jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
at
jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
[0]javax.servlet.ServletException
at
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:91)
at
jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42)
at
jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:259)
at
jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:541)
at
jrun.servlet.http.WebService.invokeRunnable(WebService.java:172)
at
jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428)
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66)
I get a 500 error page instead of my /error.jsp page.
I tried adding
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
but that doesn't work either.
JRun 4.0
Updater 6
JDK 1.4.2
Struts 1.2.8
Any ideas what to try?a. Override your skeletons error.jsp to forward/redirect to your page.
or
b. If you primarily use pageflow portlets Define a shared flow which has an exception handling method and direct it to your page. Reference the shared flow in each of your controllers (i think global.app is deprecated in 10 otherwise you could do this there). this lets you log some additional information, plus gives you the added flexibility of dealing with different exception types
or
c. Override the path to error.jsp in your portlets properties (havent tested)
Note if you are using servlets etc you still need your web.xml java.lang.Exception entry. The reason it doesnt get picked up is because the portal framework is handling the exception
Edited by: deepshet on Dec 22, 2008 8:12 PM -
Hi Guys!
I ran into a small problem.
Im using the struts tiles framework to redesign a shopping cart .
In the new framework,there are multiple websites(user interface tiles) that use the same servlets at the back end to process the requests. The control is passed back to the website that called the commonly shared servlets once the computations are done.The servlets, the various websites that use the servlets all reside on the same server and are a part of the same project.
The whole project shares a common web.xml file.
I was just wondering if each of the tiles can have thier own web.xml so that the servlet context can be loaded from them.
The directory structure is like this
Tiles Framework
-Servlet Source
-web.xml
-tiles (folder)
---tile1(folder...contains the 1st website)
---tile2
---tile 3
The reason being that in the older version of the shopping cart, the web.xml was used to load specfic contexts in the servlets.
Is it possible that wach of the tiles has its own web.xml ?
if so, does it require any configuration in the overall project.
Thanks.If I understand the web.xml file correctly, there should only be one per project. But if it's just a matter of loading props for each of the tiles, can't you just have a different properties file for each tile?
I can't imagine a situation where you'd be required to have multiple web.xml files within the same project. Can you explain why you can't just have several regular property files & read from them instead? -
Hello,
I want to configure taglibs in my web.xml file.
The beginning of the file looks like this:
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">I placed the following:
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>element just after the welcome-file-list element. When I "validate XML" in Netbeans I get :
cvc-complex-type.2.4.a: Invalid content was found starting with element 'taglib'. One of '{"http://java.sun.com/xml/ns/j2ee":description, "http://java.sun.com/xml/ns/j2ee":display-name, "http://java.sun.com/xml/ns/j2ee":icon, "http://java.sun.com/xml/ns/j2ee":distributable, "http://java.sun.com/xml/ns/j2ee":context-param, "http://java.sun.com/xml/ns/j2ee":filter, "http://java.sun.com/xml/ns/j2ee":filter-mapping, "http://java.sun.com/xml/ns/j2ee":listener, "http://java.sun.com/xml/ns/j2ee":servlet, "http://java.sun.com/xml/ns/j2ee":servlet-mapping, "http://java.sun.com/xml/ns/j2ee":session-config, "http://java.sun.com/xml/ns/j2ee":mime-mapping, "http://java.sun.com/xml/ns/j2ee":welcome-file-list, "http://java.sun.com/xml/ns/j2ee":error-page, "http://java.sun.com/xml/ns/j2ee":jsp-config, "http://java.sun.com/xml/ns/j2ee":security-constraint, "http://java.sun.com/xml/ns/j2ee":login-config, "http://java.sun.com/xml/ns/j2ee":security-role, "http://java.sun.com/xml/ns/j2ee":env-entry, "http://java.sun.com/xml/ns/j2ee":ejb-ref, "http://java.sun.com/xml/ns/j2ee":ejb-local-ref, "http://java.sun.com/xml/ns/j2ee":service-ref, "http://java.sun.com/xml/ns/j2ee":resource-ref, "http://java.sun.com/xml/ns/j2ee":resource-env-ref, "http://java.sun.com/xml/ns/j2ee":message-destination-ref, "http://java.sun.com/xml/ns/j2ee":message-destination, "http://java.sun.com/xml/ns/j2ee":locale-encoding-mapping-list}' is expected. [53]
cvc-complex-type.2.3: Element 'web-app' cannot have character [children], because the type's content type is element-only. [71]
XML validation finished.Indeed, looking at the web-app_2_4.xsd I cannot find a description for the taglib element.
Where should a put taglibs ? Is it enough to include them in every JSP so I don't need to place them in web.xml ?
Thank you.
Vlad.web.xml 2.4 uses a <jsp-config> to enclose the
<tag-lib>
<jsp-config>
<tag-lib>
</tag-lib>
</jsp-config>I believe that is the syntax. I will check when I get
to my server comp.You are right. That's how it's done. Thanks a lot for the reply.
I hope there were good reasons to break compatibility with the old format. There are a lot of examples out there that use the old one. Without knowing the reason for such a change, I find it very annoying.
Thanks again
Vlad. -
Exception in global forwards in strut-config.xml
Hi friends,
i am doing a global forward and i am getting the following exception. without global forward in strut-config.xml it works fine.exception
javax.servlet.ServletException: Cannot find global ActionForward for name welcome
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
org.apache.jsp.test_jsp._jspService(org.apache.jsp.test_jsp:76)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
javax.servlet.jsp.JspException: Cannot find global ActionForward for name welcome
org.apache.struts.taglib.logic.ForwardTag.doEndTag(ForwardTag.java:142)
org.apache.jsp.test_jsp._jspx_meth_logic_forward_0(org.apache.jsp.test_jsp:93)
org.apache.jsp.test_jsp._jspService(org.apache.jsp.test_jsp:64)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)my struts-config.xml is
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<struts-config>
<!-- ========== Global Forward Definitions ============================== -->
<global-forwards>
<forward name="welcome" path="/LPCIndex/doit.do" redirect="true"/>
</global-forwards>
<!-- ========== Action Mapping Definitions ============================== -->
<action-mappings>
<action
path="/doit"
type="com.hsbc.lpcintex.LPCIntexAction">
<forward name="success" path="/index.jsp"/>
</action>
</action-mappings>
</struts-config>my web.xml
is
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Copyright 2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
<!-- JSPC servlet mappings start -->
<!-- The Welcome File List -->
<welcome-file-list>
<welcome-file>test.jsp</welcome-file>
</welcome-file-list>
<session-config>
<session-timeout>0</session-timeout>
</session-config>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- JSPC servlet mappings end -->
</web-app>and my jsp code is
<%@ page language="java" import="com.hsbc.lpcintex.*" import="java.io.*"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<html>
<body>
<logic:forward name="welcome"/>
</body>
</html>any help please
thanks
Rits done by adding
<load-on-startup>2</load-on-startup>to web.xml -
More than one struts-config.xml files in one project
Hi all
Can we have more than one struts-config.xml files in one project developed using struts.
If so what is purpose and how to do this.
Anybody please explain on this topic.
Thanks
ParvathyHi all
Can we have more than one struts-config.xml files in
one project developed using struts.
yes it is possible
If so what is purpose and how to do this.
it is use for odular application so developer won't share a single configureation file.. as you know struts-config.xml is defined on the web.xml
like this:
<servlet>
<servlet-name>mybank</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/module1</param-name>
<param-value>
/WEB-INF/struts-module1-config.xml
</param-value>
</init-param>
</servlet>
Maybe you are looking for
-
Iphone footage into Final Cut Express
I left a question earlier in this forum and would like to update (hopefully that's proper process!). I'll repeat the question, in case: I'm trying to get footage from iPhone 4 to Final Cut Express. I'm using MPEG Streamclip 1.9.2. In the tutorial I f
-
How do you crop blank sections of tracks?
...meaning empty sections of tracks at beginning and end, before the regions start and after they end in a GB project. (I already know you can make a selection with the Cycle Button to export.)
-
Surround sound in films causes iTunes to crash
Hey there. I recently bought the films Pulp Fiction and Inception. But for me there is a big problem. Everytime I select the surround option iTunes kind of crashes. The film stops and after a few seconds, if i don't switch back to stereo, iTunes free
-
Additional query... on Oracle Lite
Dear All, I have a few additional queries on the question I posted before ADditional queries : ================== 1) What software does lie on the Windows CE platform and how do we install it, because if we install Oracle lite for handheld devices it
-
My ipod won't go to disk mode...
I installed a different OS on my ipod, and there was some error and now it won't go to disk mode to be recognised by my computer...what do I do now?