小编jmt*_*jmt的帖子

java.lang.ClassNotFoundException:org.apache.myfaces.webapp.StartupServletContextListener

我在启动JSF Web应用程序时遇到以下异常:

SEVERE: Error configuring application listener of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.ClassNotFoundException: org.apache.myfaces.webapp.StartupServletContextListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3786)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
    at org.apache.catalina.core.StandardService.start(StandardService.java:516)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Run Code Online (Sandbox Code Playgroud)

这是我的web.xml档案

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
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-app_2_5.xsd">
 <display-name>J2S</display-name>
 <context-param>
  <description>State saving method: 'client' or 'server' (=default). See JSF Specification 2.5.2</description>
  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
  <param-value>client</param-value>
 </context-param>
 <context-param>
  <param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
  <param-value>resources.application</param-value>
 </context-param>
 <context-param> …
Run Code Online (Sandbox Code Playgroud)

myfaces jsf-2

6
推荐指数
1
解决办法
5万
查看次数

如何使用值更改侦听器

我不知道如何处理f:valueChangeListener,我想选择国家和资本出现所以这是我的代码,但它不起作用什么错过或有什么不对?

 Country:
  <h:selectOneMenu value="#{event.country}" onchange="submit()">
        <f:valueChangeListener type="org.jsf.model.ValueListener"/>
        <f:selectItems value="#{event.countries}"/>     
  </h:selectOneMenu>
 Capital: #{event.capital}  
Run Code Online (Sandbox Code Playgroud)

我的托管豆

public class EventsBean{

private String capital;
private String country;
String countryCapital;


private String [] countries = {"Select","Egypt","United States","Kuwait"};

public String[] getCountries() {
    return countries;
  }

// getters and setters
}
Run Code Online (Sandbox Code Playgroud)

实现ValueChangeListener的类

package org.jsf.model;
import javax.faces.context.FacesContext;
import javax.faces.event.AbortProcessingException;
import javax.faces.event.ValueChangeEvent;
import javax.faces.event.ValueChangeListener;

public class ValueChangeClass implements ValueChangeListener {
String capital;
 @Override
   public void processValueChange(ValueChangeEvent event)throws AbortProcessingException {

if ("Egypt".equals(event.getNewValue())                  capital = "Cairo";
else if ("Kuwait".equals(event.getNewValue()))           capital = "Kuwait"; …
Run Code Online (Sandbox Code Playgroud)

events valuechangelistener jsf-2

2
推荐指数
1
解决办法
2902
查看次数

标签 统计

jsf-2 ×2

events ×1

myfaces ×1

valuechangelistener ×1