1

簡単なstruts2Webアプリケーションを開発しました。その中で、 Pageという名前のフォルダ内に2つのページindex.jsppage1.jspがあります

次のjarファイルを使用しました

 antlr.jar
 commons-beanutils.jar
 commons-digester.jar
 commons-fileupload.jar
 commons-logging.jar
 commons-logging-1.0.4.jar
 commons-validator.jar
 freemarker-2.3.8.jar
 jakarta-oro.jar
 jsf-api.jar
 jsf-impl.jar
 jstl-1.2.jar
 ognl-2.6.11.jar
 struts.jar
 struts2-core-2.0.11.2.jar
 xwork-2.0.5.jar

struts.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
   "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<constant name="struts.custom.i18n.resources" value="ApplicationResources" />
   <package name="helloworld" extends="struts-default">

      <action name="log1" class="com.loginAction">
            <result name="success">/index.jsp</result>
      </action>
   </package>
</struts>

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<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_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Struts2_Sample</display-name>

   <filter>
      <filter-name>struts2</filter-name>
      <filter-class>
         org.apache.struts2.dispatcher.FilterDispatcher
      </filter-class>
   </filter>

   <filter-mapping>
      <filter-name>struts2</filter-name>
      <url-pattern>/*</url-pattern>
   </filter-mapping>


  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

index.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen">
<body>
<s:a href="Page/page1.jsp">LOGIN</s:a>
</body>
</html>

ページ/page1.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen">
<body>
<s:form action="log1" method="post">
  <s:textfield name="name" label="USERNAME"></s:textfield>
   <s:password name="pass" label="PASSWORD"></s:password>
  <s:submit method="execute" label="LOGIN"></s:submit>
</s:form>
</body>
</html>

style.css

body 
{
background:olive;
}

loginAction.java

package com;
import com.opensymphony.xwork2.ActionSupport;
public class loginAction extends ActionSupport {

    public String execute() {
         return SUCCESS;        
    }
}

次の図は、私のアプリケーションのディレクトリ構造を示しています。 http://www.sendspace.com/file/zm46c1

アプリケーションを実行すると、その中にLOGINハイパーリンクが表示されたindex.jspページに移動します。このページには、 style.css内で定義したオリーブ色の背景色があります。これをクリックすると、page1.jspに移動し、2つのテキストフィールドと送信ボタンが表示されます。

問題:

送信ボタンをクリックすると、前のindex.jspに移動しますが、背景色は表示されません。それをクリックしてもエラーページが表示されます。

次の写真の添付ファイルは、私のアプリケーションのすべてのWebページを示しています。 http://www.sendspace.com/file/djnqvo

ログインハイパーリンクをクリックすると、エラーページが表示されます。

なぜ私がこのようになっているのか誰か教えてもらえますか?

この問題の解決策はありますか?

4

1 に答える 1

2

<s:url value="/css/style.css"/>の代わりに入れてくださいcss/style.css。jspは同じディレクトリ内のcssフォルダーを検索しているため、最初はで機能しindex.jspますが、他の2つのページにアクセスすると、Pageフォルダー内のcssフォルダーを検索します。

于 2012-08-04T08:16:03.343 に答える