2012-05-18 3 views
1

Eclipse 이모를 사용하고 있습니다. 나는 this 사이트에서 콩을 5 개의 클래스로 나눈 후, ModelBean, BackingBeanControllerBean을 사용하고 있습니다.JSF Eclipse를 사용하여 관리 Bean X를 만들 수 없습니다.

내 프로젝트 구조는 다음과 같습니다

Java resources ->src - 여기

위에서 언급 한 콩> com.erp3.gui.userUserController

package com.erp3.gui.user; 

import java.io.Serializable; 

import com.erp3.bo.user.UserBO; 

public class UserController implements Serializable { 

    private static final long serialVersionUID = 1L; 
    private UserBO bo; 
    private UserModel model; 

    public UserController() { 
     bo = new UserBO(); 
     model = new UserModel(); 
    } 

    public void Login() { 
     model.setVo(bo.executeLogin(model.getVo())); 
     System.out.println("Foi"); 
    } 

    public UserBO getBo() { 
     return bo; 
    } 

    public void setBo(UserBO bo) { 
     this.bo = bo; 
    } 

    public UserModel getModel() { 
     return model; 
    } 

    public void setModel(UserModel model) { 
     this.model = model; 
    } 
} 

나는 index.html 실행하면 :

<h:inputText label="Usuário" id="username" value="#{userController.model.vo.login}"/> 

그리고 나는이 예외가 : 나는 이클립스 주석 작동하지 않습니다 들었다

javax.servlet.ServletException: Unable to create managed bean userController. The following problems were found: 
    - Bean or property class com.erp3.gui.user.UserController for managed bean userController cannot be found. 
    - Bean or property class com.erp3.gui.user.UserController for managed bean userController cannot be found. 
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:321) 

를, 그래서 내 faces-config

<?xml version="1.0" encoding="UTF-8"?> 
<faces-config version="2.0" xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xi="http://www.w3.org/2001/XInclude" 
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-facesconfig_2_0.xsd"> 
<managed-bean> 
    <managed-bean-name>userController</managed-bean-name> 
    <managed-bean-class>com.erp3.gui.user.UserController</managed-bean-class> 
    <managed-bean-scope>request</managed-bean-scope> 
</managed-bean> 
<managed-bean> 
    <managed-bean-name>userBacking</managed-bean-name> 
    <managed-bean-class>com.erp3.gui.user.UserBacking</managed-bean-class> 
    <managed-bean-scope>request</managed-bean-scope> 
</managed-bean> 
<managed-bean> 
    <managed-bean-name>userModel</managed-bean-name> 
    <managed-bean-class>com.erp3.gui.user.UserModel</managed-bean-class> 
    <managed-bean-scope>session</managed-bean-scope> 
</managed-bean> 
<application> 
    <message-bundle>com.erp3.gui.helpers.messages</message-bundle> 
</application> 
</faces-config> 

필요한 경우, 나는 내 다른 빈을 추가 할 수 있습니다 , 거대한 질문을하기 때문에하지 않았다.

편집

나는 내 콩에 주석을 추가하고 문제가 변경 :

javax.el.PropertyNotFoundException: /views/user/login.xhtml @18,135 value="#{userController.model.vo.login}": Target Unreachable, identifier 'userController' resolved to null 
    com.sun.faces.facelets.el.TagValueExpression.getType(TagValueExpression.java:97) 
    com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getConvertedValue(HtmlBasicInputRenderer.java:91) 
    javax.faces.component.UIInput.getConvertedValue(UIInput.java:1023) 
    javax.faces.component.UIInput.validate(UIInput.java:953) 
    javax.faces.component.UIInput.executeValidate(UIInput.java:1204) 
    javax.faces.component.UIInput.processValidators(UIInput.java:693) 
    javax.faces.component.UIForm.processValidators(UIForm.java:240) 
    javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081) 
    javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081) 
    javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1159) 
    com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72) 
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97) 
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) 
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) 

하지만이 faces-config에 콩을 추가 할 때 오류가 다시 온다.

+2

* "이클립스가 주석으로 작동하지 않는다고 들었습니다."* 그 사람이 거짓말을하거나, 당신이 그/그녀를 오해 한 것입니다. 그런데 ICEfaces의 기사에 동의하지 않습니다. http://stackoverflow.com/questions/7223055/distinction-between-different-types-of-managed-beans – BalusC

+0

@BalusC 10 분 전에 친구로부터 들었습니다. gonna update him =) – Gerep

+0

Eclipse에서 JBoos Tools를 사용하여'xhtml' 파일을 작업 할 필요가 있습니까? 이 친구가 말해 줬지만 지금은 그의 말을 의심하기 시작했습니다 – Gerep

답변

5

불행히도 그것은 엄청난 관심이 부족했습니다.

내 프로젝트 빌드 경로에서 내 서버의 jar를 참조하고 다른 프로그래머가 해당 jars 주소를 변경하여 참조가 끊어졌습니다.

이상한 점은 Eclipse가이 문제점에 대한 경고를 보내지 않았다는 것입니다.

문제가 해결되었습니다.

귀하의 시간과 관심에 감사드립니다 BalusC 및 Montolide.

+1

나는 동일한 문제 (및 해결책)가 있었다. 보고 된 메시지는 약간의 붉은 청어이며, 겸손한 의견으로는 향후 개선 될 것입니다. – StockB

+0

동일한 관리 Bean을 만들 수 없습니다. com.sun.faces.mgbean.ManagedBeanCreationException. 내 경우도 구축 경로와 관련이 있습니다. Eclipse에서 -> Project -> Properties -> Java Build Path -> Order and Export에서 Build 클래스 경로 순서를 변경했다. JRE, 2. 소스 파일 3. Maven 의존성, 4. JSF 라이브러리, 5. Apache Tomcat이 문제를 해결했습니다. http://stackoverflow.com/users/1399438/stockb에 동의하면 오류 메시지를보다 잘 구성 할 수 있습니다. –

+0

@StockB 나는 동의한다, 질문을 최신 상태로 업데이트한다;) – Gerep

2

Eclipse는 주석 (또는 아마도 JBoss 도구)과 잘 작동하므로 클래스에 @ManagedBean을 사용해야합니다.

faces-config은 WEB-INF 폴더에 있습니까?

+0

나는 JBoos를 사용하고있다. 그리고 예, WEB-INF에'faces-config'가 있습니다. JBoos를 추가하여'xhtml' 파일에 대한 지원을 추가했습니다. 필요한가요? 그것은 내 첫 프로젝트 – Gerep

+0

어떤 아이디어? 나는 시간당 해결책을 찾고있다 – Gerep

관련 문제