是否可以使用struts-el 1.2.9为websphere 8.5部署创建动态Web 3.0

时间:2013-03-06 10:24:00

标签: eclipse java-ee websphere struts-1 ibm-rad

正如问题所暗示的那样。 在RAD / eclipse中使用动态Web 3.0项目时,如果要在websphere 8.5.1中部署库struts 1.2.9,是否会有任何冲突 原因是我使用struts 1.1从websphere 5.1迁移,但是想知道如果我进行迁移,是否会遇到任何困难。

干杯。

我收到以下错误:

  

javax.servlet.jsp.JspException:找不到下面的表单   ' SAChangeSecretQAsFormBean'在当地' en_US'在   org.apache.struts.taglib.html.JavascriptValidatorTag.renderJavascript(JavascriptValidatorTag.java:384)     在   org.apache.struts.taglib.html.JavascriptValidatorTag.doStartTag(JavascriptValidatorTag.java:349)     在   org.apache.strutsel.taglib.html.ELJavascriptValidatorTag.doStartTag(ELJavascriptValidatorTag.java:218)     在   com.ibm._jsp._SA_5F_SecretQuestions._jspx_meth_html $ 1el_javascript_0(_SA_5F_SecretQuestions.java:304)     在   com.ibm._jsp._SA_5F_SecretQuestions._jspService(_SA_5F_SecretQuestions.java:140)     在com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)     在javax.servlet.http.HttpServlet.service(HttpServlet.java:668)at   com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)     在   com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)     在   com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:122)     在   com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:216)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:928)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1025)     在   com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1384)     在   com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:193)     在   org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)     在   org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)     在   org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)     在   org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)     在   org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)     在javax.servlet.http.HttpServlet.service(HttpServlet.java:575)at   javax.servlet.http.HttpServlet.service(HttpServlet.java:668)at at   com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)     在   com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:79)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:928)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1025)     在   com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:1384)     在   com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:193)     在   org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)     在   org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)     在   org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)     在   org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)     在   org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)     在javax.servlet.http.HttpServlet.service(HttpServlet.java:575)at   javax.servlet.http.HttpServlet.service(HttpServlet.java:668)at at   com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1224)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:774)     在   com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)     在   com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:136)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:97)     在com.web.sa.SecurityServlet.doFilter(SecurityServlet.java:75)at   com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)     在com.web.sa.SAReqLoggerServlet.doFilter(SAReqLoggerServlet.java:62)     在   com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:195)     在   com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:91)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:928)     在   com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1025)     在   com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)     在   com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:895)     在   com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)     在   com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:195)     在   com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:459)     在   com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:526)     在   com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:312)     在   com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:283)     在   com.ibm.ws.ssl.channel.impl.SSLConnectionLink.determineNextChannel(SSLConnectionLink.java:1048)     在   com.ibm.ws.ssl.channel.impl.SSLConnectionLink.readyInboundPostHandshake(SSLConnectionLink.java:716)     在   com.ibm.ws.ssl.channel.impl.SSLConnectionLink $ MyHandshakeCompletedCallback.complete(SSLConnectionLink.java:412)     在   com.ibm.ws.ssl.channel.impl.SSLUtils.handleHandshake(SSLUtils.java:1066)     在   com.ibm.ws.ssl.channel.impl.SSLHandshakeIOCallback.complete(SSLHandshakeIOCallback.java:87)     在   com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)     在   com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)     在   com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)     在com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)at at   com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)at at   com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)     在com.ibm.io.async.ResultHandler $ 2.run(ResultHandler.java:905)at   com.ibm.ws.util.ThreadPool $ Worker.run(ThreadPool.java:1814)

但表格在源中: 幅\ SRC \ COM \幅\ SA \ SAChangeSecretQAsFormBean.java

我的网络配置: 的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp" version="3.0" 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-app_3_0.xsd">
...
    <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>
    <init-param>
        <param-name>config/jsp/sa</param-name>
        <param-value>/WEB-INF/struts-config-sa.xml</param-value>
    </init-param>
...
        <load-on-startup>2</load-on-startup>
</servlet>
...
</web-app>

我的sturts配置是: 的struts-config.xml

    <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
                               "struts-config_1_2.dtd">
<struts-config>
    <!-- Data Sources -->
    <data-sources></data-sources>

    <!-- Form Beans -->
    <form-beans>
...
        <form-bean name="SAChangeSecretQAsFormBean" type="com.web.sa.SAChangeSecretQAsFormBean"></form-bean>
...
</form-beans>
...
</struts-config>

的struts-config-sa.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
                               "struts-config_1_2.dtd">

<struts-config>
...
    <form-beans>
...
    <form-bean name="SAChangeSecretQAsFormBean" type="com.web.sa.SAChangeSecretQAsFormBean"></form-bean>
...
    </form-beans>
...
    <action-mappings>
...
    <action path="/SAChangeSecretQAs" 
            name="SAChangeSecretQAsFormBean" 
            type="com.web.sa.SAChangeSecretQAsAction" scope="session" input="success">
        <forward name="success" path="jsp/sa/SA_SecretQuestions.jsp"></forward>
        <forward name="logout" path="jsp/sa/SALogout.do?buttonPressed=logout&amp;CASE_FORWARD=YES"></forward>
        <forward name="access" path="jsp/sa/SAAccessDetails.do?CASE_FORWARD=YES"></forward>
    </action>
...
    </action-mappings>
</struts-config>

SAChangeSecretQAsFormBean.java

package com.web.common;

public class SAChangeSecretQAsFormBean extends ValidatorForm
{
...
}

SAChangeSecretQAsAction.java

package com.web.sa;
public class SAChangeSecretQAsAction extends Action
{
    public ActionForward executeAction(
                    ActionMapping mapping,
                    ActionForm form,
                    HttpServletRequest req,
                    HttpServletResponse res)
                    throws IOException, ServletException
    {
...
    }
...
}

SA_SecretQuestions.jsp

<%@ include file = "../common/header.inc"%>
<%
  try {
      %>
<html-el:javascript formName="SAChangeSecretQAsFormBean" staticJavascript="false" dynamicJavascript="true" page="0" />
      <%
  }
  catch (Exception x) {
    x.printStackTrace();
  }
%>

header.inc

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ taglib uri="../../WEB-INF/struts-html-el.tld" prefix="html-el" %>
<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="../../WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="../../WEB-INF/struts-logic-el.tld" prefix="logic-el" %>
<%@ page import ="com.constant.*" buffer="16kb" errorPage="../errorpages/GenericErrorPage.jsp"  %>

<%String cacheReq=null;%>

<html-el:base/>
<html> 
<HEAD>

如果缺少任何其他信息,请告诉.. 感谢

0 个答案:

没有答案