.. 내가 시간 이후 내 실수 검색하고 실행 호출하지.조치는 -() 메소드
나의 양식은 행동으로 않을 것입니다. 하지만 1000 번 확인했습니다. 모든 것은 바르게 쓰여졌습니다. 잘 모르겠다 ... 제발 도와주세요!
내 사랑하는 오류 메시지 :
HTTP 상태 404 - 행동 de.nordakademie.librarymgmt.action.CreatePubAction 정의 및 입력을
유형 상태 보고서
메시지 없음을 초래할 결과가 없습니다 작업에 대해 정의 된 결과 de.nordakademie.librarymgmt.action.CreatePubAction 및 결과 입력
설명 ion 요청한 리소스를 사용할 수 없습니다.
아파치 톰캣은 JSP 그게/7.0.42
. 폴더 JSP라는 createPublication.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title></title>
</head>
<body>
<h3>Fügen Sie eine neue Publikation hinzu</h3>
<s:form action="createPubAction">
<s:textfield key="publication.title" />
<%-- <s:textfield key="publication.author" /> --%>
<s:textfield key="publication.publisher" />
<s:textfield key="publication.publishment" />
<s:textfield key="publication.isbn" />
<s:textfield key="publication.stock" />
<s:if test="%{publicationtypes.isEmpty()}">
keine Publikationstypen
</s:if>
<s:else>
<s:select Listkey="publication.type" list="publicationtypes.{type}" />
</s:else>
<s:if test="%{keywords.isEmpty()}">
keine Schlagwörter
</s:if>
<s:else>
<s:checkboxlist key="publication.keyword" label="Schlagworte"
name="keywordsL1" list="keywords.{name}" />
</s:else>
<s:submit label="save" value="Speichern" />
</s:form>
</body>
</html>
Struts.xml newPublication이 페이지를 호출에서 나는 타일
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="main" template="/jsp/main.jsp">
<put-attribute name="title" value="Dashboard"/>
<put-attribute name="menu" value="/jsp/menu.jsp"/>
<put-attribute name="header" value="/jsp/header.jsp"/>
<put-attribute name="content" value="/jsp/start.jsp"/>
</definition>
<definition name="dashboard" extends="main">
<put-attribute name="title" value="Dashboard"/>
<put-attribute name="content" value="/jsp/start.jsp"/>
</definition>
<definition name="rental" extends="main">
<put-attribute name="title" value="Verleihvorgänge"/>
<put-attribute name="content" value="/jsp/rental.jsp"/>
</definition>
<definition name="catalog" extends="main">
<put-attribute name="title" value="Katalog"/>
<put-attribute name="content" value="/jsp/catalog.jsp"/>
</definition>
<definition name="createPublication" extends="main">
<put-attribute name="title" value="Neue Publikation erstellen"/>
<put-attribute name="content" value="/jsp/createPublication.jsp"/>
</definition>
</tiles-definitions>
과 마지막 파일 필요한 정보
<?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">
<!-- mapping of global-results and global-exceptions -->
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" />
<package name="default" extends="struts-default" namespace="/">
<result-types>
<result-type name="tiles"
class="org.apache.struts2.views.tiles.TilesResult" />
</result-types>
<default-action-ref name="Start" />
<action name="Start" class="de.nordakademie.librarymgmt.action.StartAction">
<result type="tiles" name="success">main</result>
</action>
<action name="newPublication"
class="de.nordakademie.librarymgmt.action.NewPublication">
<result type="tiles" name="success">createPublication</result>
</action>
<action name="createPubAction"
class="de.nordakademie.librarymgmt.action.CreatePubAction">
<result type="tiles" name="success">catalog</result>
</action>
<action name="catalogAction"
class="de.nordakademie.librarymgmt.action.navi.CatalogAction">
<result type="tiles" name="success">catalog</result>
</action>
</package>
</struts>
를 입력해야하는 경우 하지만 적어도 조치 :
package de.nordakademie.librarymgmt.action;
import com.opensymphony.xwork2.ActionSupport;
import de.nordakademie.librarymgmt.model.Publication;
import de.nordakademie.librarymgmt.service.IPublicationService;
public class CreatePubAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private Publication publication;
private IPublicationService publicationService;
@Override
public String execute() throws Exception {
try{
publicationService.savePublication(publication);
return SUCCESS;
} catch(Exception e){
e.printStackTrace();
return ERROR;
}
}
public Publication getPublication() {
return publication;
}
public void setPublication(Publication publication) {
this.publication = publication;
}
public IPublicationService getPublicationService() {
return publicationService;
}
public void setPublicationService(IPublicationService publicationService) {
this.publicationService = publicationService;
}
}
struts.xml 파일의 당신의 createPubAction의 결과 유형은 무엇입니까? 어디로 가리 킵니까? –
<결과 TYPE = "타일"NAME = "성공"> 탈 는이은 JSP 페이지이다. 네비게이션 – user2182326
에서 호출하면 작동합니다. 그 struts.xml에서 호출하는 "이름"... 그리고 이름은 철자가 작고 클래스 패스에서 이름의 철자가 큰 것입니다;) – user2182326