2013-04-19 2 views
0

저는 JSP/struts 프로젝트에서 작업하고 있습니다. 지금은 실제 프로젝트를 시작하기 전에 기본적인 첫 페이지를 만들고 작업하기 위해 노력하고 있습니다. MyEclipse에서 내 페이지를 전개 한 후 브라우저를 통해 localhost 페이지에 액세스하려고 할 때 오류가 계속 발생합니다. 내가 얻는 오류는 다음과 같습니다.배포 된 JSP 페이지에 액세스하는 데 문제가 있습니다

HTTP Status 500 - 
type Exception report 
message 
description The server encountered an internal error() that prevented it from fulfilling  this request. 
exception 
org.apache.jasper.JasperException: javax.servlet.ServletException:  javax.servlet.jsp.JspException: Cannot retrieve definition for form bean userLoginForm 

기본 메시지입니다.

초기 JSP 페이지의 코드는

<%@ page language="java" pageEncoding="ISO-8859-1"%> 
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%> 
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%> 

<html> 
    <head> 
     <title>JSP for UserLoginForm form</title> 
    </head> 
    <body> 
     <html:form action="/userLogin"> 
      userName : <html:text property="userName"/><html:errors   property="userName"/><br/> 
      enter : <html:text property="enter"/><html:errors property="enter"/> <br/> 
      server : <html:text property="server"/><html:errors  property="server"/><br/> 
      password : <html:text property="password"/><html:errors  property="password"/><br/> 
      <html:submit/><html:cancel/> 
     </html:form> 
    </body> 
</html> 

이 함께 작동하는 XML 파일입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<!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 /> 
    <form-beans > 
    <form-bean name="UserLoginForm" type="strutsPackage.struts.form.UserLoginForm" /> 

    </form-beans> 

    <global-exceptions /> 
    <global-forwards /> 
    <action-mappings > 
    <action 
     attribute="userLoginForm" 
     input="/login.jsp" 
     name="userLoginForm" 
     path="/userLogin" 
     scope="request" 
     type="strutsPackage.struts.action.UserLoginAction"> 
     <forward name="failure" path="/login.jsp" /> 
     <forward name="success" path="/login.jsp" /> 
    </action> 

    </action-mappings> 

    <message-resources parameter="strutsPackage.struts.ApplicationResources" /> 
</struts-config> 

및 작업 페이지는 다음과 같습니다

package strutsPackage.struts.action; 

import javax.servlet.http.HttpServletRequest; 
    /** 
* MyEclipse Struts 
* Creation date: 04-18-2013 
* 
* XDoclet definition: 
* @struts.action path="/userLogin" name="userLoginForm" input="/login.jsp"  scope="request" validate="true" 
* @struts.action-forward name="failure" path="/login.jsp" 
* @struts.action-forward name="success" path="/login.jsp" 
*/ 
public class UserLoginAction extends Action { 
    /* 
    * Generated Methods 
    */ 

    /** 
     * Method execute 
     * @param mapping 
    * @param form 
    * @param request 
    * @param response 
    * @return ActionForward 
    */ 
    public ActionForward execute( 
       ActionMapping mapping, 
        ActionForm form, 
       HttpServletRequest request, 
       HttpServletResponse response) { 
       UserLoginForm userLoginForm = (UserLoginForm) form; 

       if(userLoginForm.getUserName().equals("myeclipse") &&  userLoginForm.getPassword().equals("myeclipse")) 
       { 
       request.setAttribute("userName", userLoginForm.getUserName()); 
       return mapping.findForward("success"); 
       } 

       return mapping.findForward("failure"); 
      } 
} 

마다 한 번 잠시

이라는 다른 오류 페이지가 표시됩니다.
HTTP Status 500 - 

type Exception report 

message 

description The server encountered an internal error() that prevented it from fulfilling  this request. 

exception 

org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at  line 10 

7:  <title>JSP for UserLoginForm form</title> 
8: </head> 
9: <body> 
10:   <html:form action="/userLogin"> 
11:    userName : <html:text property="userName"/><html:errors  property="userName"/><br/> 
12:    enter : <html:text property="enter"/><html:errors property="enter"/><br/> 
13:    server : <html:text property="server"/><html:errors property="server"/><br/> 

이러한 오류는 명백한 이유 때문에 교환되지 않는 것처럼 보이지만 실제로 혼란스러운 것은 내가 어제 잘 보일 페이지를 얻었으며 더 이상 만지지 않았으며 오늘 열려고 시도했을 때 첫 번째 오류 페이지. 나는 사이트 재배포를 시도했지만 여전히 같은 것을 얻고있다.

내 코드 또는 Tomcat의 버전에 문제가 있는지 또는 내 코드에 문제가 있는지 여부는 알 수 없습니다.

도움을 주시면 감사하겠습니다.

답변

0

"userLoginForm" 동작 매핑에서와 같이 양식 빈 정의 에서처럼 "UserLoginForm"과 동일하지 않습니다. 그들은 동일해야합니다.

을 사용 중인지 확실하지 않습니다. XDoclet; 그렇다면 다양한 구성 산출물을 생성하므로 말할 필요가 있습니다.

관련 없음 : 정당한 이유가 없다면 Struts 1 학습에 신경 쓰지 마십시오. 고대의 것으로 EOLed이므로 새로운 개발에 사용해서는 안됩니다. Struts 2 나 Spring MVC가 전형적인 대체물이거나 JVM에 묶여 있다면 JSF, Play, Grails, JRuby on Rails 등으로 이동할 수있다.

+1

이제 * 홀수 다운 보트가 있습니다. 복수심이 생길 때 그것을 사랑해. –

관련 문제