提交文件login.jsp内容如下:
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.util.*,java.io.*,java.text.*" errorPage="" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>登录</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
.STYLE3 {font-family: "宋体"; font-size: 16px; color: #FFFFFF; }
.STYLE4 {color: #FFFFFF}
-->
</style>
<script language="javascript">
<!--
function resetBtn(fm){
fm.reset();
return false;
}
-->
</script>
</head>
<body><%
request.setCharacterEncoding("gb2312");
%><p> </p>
<p><br />
<br />
<br />
<br /></p>
<table width="636" height="404" border="0" align="center" cellpadding="0" cellspacing="0" background="images/tl_login1.jpg">
<tr>
<td width="39%" align="center" valign="middle"> </td>
<td width="61%" height="282">
<form name="dtx_login" method="post" action="login.do?xp=我的电脑"> //此处提交
<p> </p>
<p> </p>
<p> </p>
<br />
<table width="64%" height="123" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="48%" height="23" align="right"><div align="center"><span class="STYLE3">用户名</span></div></td>
<td width="52%"> <input name="username" type="text" size="15" /></td>
</tr>
<tr>
<td height="43" align="right"><div align="center"><span class="STYLE3">密 码</span></div></td>
<td> <input name="password" type="password" size="15" /></td>
</tr>
<tr>
<td height="55" align="right"><div align="center">
<input name="imageField" type="image" src="images/putin.gif" align="middle" onClick="dtx_login.submit();" />
</div></td>
<td><div align="center">
<input name="imageField2" type="image" onClick="return resetBtn(this.form)" src="images/rewrite.gif" align="middle" />
</div></td>
</tr>
</table>
<br />
</form></td>
</tr>
<tr>
<td height="115"> </td>
<td> </td>
</tr>
</table>
</body>
</html>
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*,java.util.*,java.io.*,java.text.*" errorPage="" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>登录</title>
<style type="text/css">
<!--
body {
background-color: #000000;
}
.STYLE3 {font-family: "宋体"; font-size: 16px; color: #FFFFFF; }
.STYLE4 {color: #FFFFFF}
-->
</style>
<script language="javascript">
<!--
function resetBtn(fm){
fm.reset();
return false;
}
-->
</script>
</head>
<body><%
request.setCharacterEncoding("gb2312");
%><p> </p>
<p><br />
<br />
<br />
<br /></p>
<table width="636" height="404" border="0" align="center" cellpadding="0" cellspacing="0" background="images/tl_login1.jpg">
<tr>
<td width="39%" align="center" valign="middle"> </td>
<td width="61%" height="282">
<form name="dtx_login" method="post" action="login.do?xp=我的电脑"> //此处提交
<p> </p>
<p> </p>
<p> </p>
<br />
<table width="64%" height="123" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="48%" height="23" align="right"><div align="center"><span class="STYLE3">用户名</span></div></td>
<td width="52%"> <input name="username" type="text" size="15" /></td>
</tr>
<tr>
<td height="43" align="right"><div align="center"><span class="STYLE3">密 码</span></div></td>
<td> <input name="password" type="password" size="15" /></td>
</tr>
<tr>
<td height="55" align="right"><div align="center">
<input name="imageField" type="image" src="images/putin.gif" align="middle" onClick="dtx_login.submit();" />
</div></td>
<td><div align="center">
<input name="imageField2" type="image" onClick="return resetBtn(this.form)" src="images/rewrite.gif" align="middle" />
</div></td>
</tr>
</table>
<br />
</form></td>
</tr>
<tr>
<td height="115"> </td>
<td> </td>
</tr>
</table>
</body>
</html>
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd"><web-app><filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.utils.EncodingFilter</filter-class>
<init-param>
<param-name>ignore</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>encoding</param-name>
<param-value>GB2312</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<servlet-name>*.jsp</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<servlet-name>action</servlet-name>
</filter-mapping> <servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>5</param-value>
</init-param>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping> <!-- The Usual Welcome File List -->
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list> <!-- Struts Tag Library Descriptors -->
<taglib>
<taglib-uri>/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-bean.tld</taglib-location>
</taglib> <taglib>
<taglib-uri>/struts-html</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-html.tld</taglib-location>
</taglib> <taglib>
<taglib-uri>/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-logic.tld</taglib-location>
</taglib> <taglib>
<taglib-uri>/struts-nested</taglib-uri>
<?xml version="1.0" encoding="ISO8859-1"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config>
<data-sources>
<data-source>
<data-source key="oracleDB1" type="org.apache.commons.dbcp.BasicDataSource">
<set-property value="oracle.jdbc.driver.OracleDriver" property="driverClass" />
<set-property value="jdbc:oracle:thin:@172.16.16.146:1521:JGZS" property="url" /> //这里会用问题吗?数据库名用大写JGZS
<set-property value="200" property="maxCount" />
<set-property value="1" property="minCount" />
<set-property value="1000" property="maxWait" />
<set-property value="JGZS" property="user" />
<set-property value="12345678" property="password" />
<set-property value="true" property="AutoCommit" />
</data-source>
</data-sources> <form-beans>
<form-bean name="login" type="org.apache.struts.validator.DynaValidatorForm">
<form-property name="username" type="java.lang.String" />
<form-property name="password" type="java.lang.String" />
</form-bean>
</form-beans><global-forwards>
</global-forwards>
<action-mappings>
<action name="login" type="dtx.LoginAction" validate="true" scope="request" path="/login">
<forward name="print" path="/print.jsp" />
<forward name="fail" path="/index.jsp" />
</action>
</action-mappings>
<message-resources parameter="dtx.MyResource_zh" />
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property value="/WEB-INF/validator-rules.xml,/WEB-INF/validator.xml" property="pathnames" />
<set-property property="stopOnFirstError" value="false"/>
</plug-in>
</struts-config>错误现象:Servlet action is not available
点击提交出现该界面,服务器无任何输出提示,是该struts 没有处理该请求,因为
提交处理LoginAction为:
package dtx;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.DynaActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import baseclass.*;
import javax.servlet.ServletContext;
import javax.sql.DataSource;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class LoginAction extends Action{
public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response)throws Exception
{
System.out.println("ssss=用户字典");//无此处输出,是没有进入该action的意思吧
request.setCharacterEncoding("ISO8859_1");
DynaActionForm dyform=(DynaActionForm)form;
String name=(String)dyform.get("username");
String psw=(String)dyform.get("password");
String sp=(String)request.getParameter("xp");
System.out.println(sp);
ServletContext context=servlet.getServletContext();
DataSource datasource=(DataSource)context.getAttribute("oracleDB1");
baseclass dbuser=new baseclass(datasource);
System.out.println("wwww=用户字典");
if(!dbuser.checklogin("用户字典","用户名称","密码",name,psw))
{
ActionMessages errors=new ActionMessages();
errors.add(ActionMessages.GLOBAL_MESSAGE,new ActionMessage("label.deny"));
if(!errors.isEmpty())
{
saveErrors(request,errors);
}
dbuser.closedbk();
return mapping.findForward("failed");
}
else
{
return mapping.findForward("print");
}
}
}
检查一下你的配置文件----------------------------------------
城市劣人 http://www.5ai7.net/
--------------------------
试过,结果一样
是tomcat配置问题???,可是tomcat正常启动,无任何提示错误!!!!!!