2013-05-21 3 views
0

6 시간 이래로 처리 중이지만 해결하지 못하는 문제가 있습니다.에 의해 발생 : javax.naming.NameNotFoundException - 이름 [Class/object]가이 컨텍스트에 바인드되지 않았습니다.

내가이 얻을 서버에서 프로젝트를 실행 JSF/톰캣 7/메이븐/자바 7

매번를 사용하여 동적 웹 프로젝트 핵 물질 오전 : 여기

javax.naming.NameNotFoundException: Name [....ProjectManagement/service] is not bound in this Context. Unable to find [de.hhn.team3.artzpraxismanagement.ProjectManagement]. 
at org.apache.naming.NamingContext.lookup(NamingContext.java:820) 
at org.apache.naming.NamingContext.lookup(NamingContext.java:168) 
at org.apache.catalina.core.DefaultInstanceManager.lookupFieldResource(DefaultInstanceManager.java:580) 
at org.apache.catalina.core.DefaultInstanceManager.processAnnotations(DefaultInstanceManager.java:470) 
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:157) 
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:150) 
at org.apache.myfaces.config.annotation.Tomcat7AnnotationLifecycleProvider.postConstruct(Tomcat7AnnotationLifecycleProvider.java:90) 
at org.apache.myfaces.config.ManagedBeanBuilder.buildManagedBean(ManagedBeanBuilder.java:213) 
at org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.createManagedBean(ManagedBeanResolver.java:333) 
at org.apache.myfaces.el.unified.resolver.ManagedBeanResolver.getValue(ManagedBeanResolver.java:296) 
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67) 
at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169) 
at org.apache.myfaces.el.VariableResolverImpl.resolveVariable(VariableResolverImpl.java:65) 
at org.apache.myfaces.el.convert.VariableResolverToELResolver.getValue(VariableResolverToELResolver.java:123) 
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67) 
at org.apache.myfaces.el.unified.resolver.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:169) 
at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:72) 
at org.apache.el.parser.AstValue.getValue(AstValue.java:161) 
at org.apache.el.parser.AstEqual.getValue(AstEqual.java:38) 
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:185) 
at org.apache.myfaces.view.facelets.el.ContextAwareTagValueExpression.getValue(ContextAwareTagValueExpression.java:96) 
at javax.faces.component._DeltaStateHelper.eval(_DeltaStateHelper.java:263) 
at javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:1089) 
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:733) 
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:758) 
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:758) 
at org.apache.myfaces.view.facelets.FaceletViewDeclarationLanguage.renderView(FaceletViewDeclarationLanguage.java:1900) 
at org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:285) 
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:115) 
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241) 
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:199) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) 
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 

내 클래스 프로젝트 관리

입니다
package ...artzpraxismanagement; 

@Named 
@ManagedBean 
@SessionScoped 
public class ProjectManagement implements Serializable {   
private static final long serialVersionUID = 1L;  
@EJB private Services service; 

내 서비스 클래스

@ManagedBean 
@SessionScoped 
@Local 
public class Services implements Serializable {...} 

난의 WebContent/lib 디렉토리에서 톰캣 항아리를 삭제 같은 다른 솔루션을 시도했지만 그것은 도움이되지 않습니다.

ProjectManagement 클래스가 context.xml에 묶여 있지 않은 것 같습니다.

어떻게하면됩니까?

답변

5

톰캣은 서블릿 컨테이너이므로 EJB 및 CDI는 기본적으로 Tomcat에서 작동하지 않습니다. 응용 프로그램을 사용하려면 JBoss 7, GlassFish 3 또는 TomEE과 같은 실제 Java EE 응용 프로그램 서버에 응용 프로그램을 배포해야합니다.이 패키지는 무료이며 Java EE 6 응용 프로그램 서버 인 IBM WebSphere 및 Oracle WebLogic과 같은 것이 있지만 획득/사용하기 위해 지불). 이것을 Tomcat에 계속 배치한다면 결코 성공할 수 없습니다.

그래도 Tomcat 만 사용하려면 @EJB 및 기타 Java EE 주석 (예 : @Named과 같은 CDI 주석)을 제거하십시오.

그런데 JSF 또는 CDI에 대한 좋은 자습서를 따르십시오. 동시에 @Named@ManagedBean으로 장식 된 콩을 가질 수 없습니다.

+1

+1. Luiggi, '* sane tutorial *'이라는 용어를 가장 자주 사용하는 사용자는 누구입니까? :) – skuntsel

+0

@skuntsel 우리 모두 누가 = P를 알아 –

+0

그건 사실이야 :) – skuntsel

관련 문제