RackSpace Cloud Server Ubuntu-12.04、JSF-2.0、Mojarra-2.1.17、Intellij Idea-11.1.2、Windows-8、Tomcat 7.0.26、JDK-6。
ここに表示されているように、プロジェクトをリモートのTomcatサーバーにデプロイしようとしています。Intellij Ideaのリモートサーバー展開機能が正しく機能していないため、手動で実行しようとしています。
exploded war archive
フォルダ(アーティファクト)をサーバーに配置し、フォルダ/var/lib/tomcat7/webapps
の名前をROOTに変更しました。のようです;/var/lib/tomcat7/webapps/ROOT
サーバーのコマンドラインからTomcatを再起動すると、 IPAddress:8080でサイトに正しくアクセスできます 。そして、CSSを正しくロードしても、スタートアップページは良さそうです。しかし、ログインしようとした後、ローカルのように機能していません。ローカルマシンで完全に機能するため、問題は実装に関するものではありません。
ログインを試みた後のスタックトレース:
javax.faces.FacesException
helpers.JSFHelper.getManagedBean(JSFHelper.java:27)
servlet.facebook.FacebookCallBackServlet.doPost(FacebookCallBackServlet.java:202)
servlet.facebook.FacebookCallBackServlet.doGet(FacebookCallBackServlet.java:48)
javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
com.ocpsoft.pretty.PrettyFilter.doFilter(PrettyFilter.java:145)
JSFHelperのgetManagedBeanは次のとおりです。
public static Object getManagedBean(final String beanName) {
FacesContext fc = FacesContext.getCurrentInstance();
Object bean;
try {
ELContext elContext = fc.getELContext();
bean = elContext.getELResolver().getValue(elContext, null, beanName);
} catch (RuntimeException e) {
throw new FacesException(e.getMessage(), e);
}
if (bean == null) {
throw new FacesException("Managed bean with name '" + beanName
+ "' was not found. Check your faces-config.xml or @ManagedBean annotation.");
}
return bean;
}