Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用嵌入式Jetty运行JSF-2页面?_Java_Jsf_Servlets_Jsf 2_Embedded Jetty - Fatal编程技术网

Java 使用嵌入式Jetty运行JSF-2页面?

Java 使用嵌入式Jetty运行JSF-2页面?,java,jsf,servlets,jsf-2,embedded-jetty,Java,Jsf,Servlets,Jsf 2,Embedded Jetty,是否可以使用嵌入式Jetty启动JSF-2页面(假设我有*.html和支持bean) 所谓嵌入式Jetty,我指的是如下内容(但显然与JSF页面相结合) import java.io.IOException; 导入javax.servlet.ServletException; 导入javax.servlet.http.HttpServletRequest; 导入javax.servlet.http.HttpServletResponse; 导入org.eclipse.jetty.server.R

是否可以使用嵌入式Jetty启动JSF-2页面(假设我有*.html和支持bean)

所谓嵌入式Jetty,我指的是如下内容(但显然与JSF页面相结合)

import java.io.IOException;
导入javax.servlet.ServletException;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入org.eclipse.jetty.server.Request;
导入org.eclipse.jetty.server.server;
导入org.eclipse.jetty.server.handler.AbstractHandler;
公共类HelloHandler扩展了AbstractHandler
{
公共无效句柄(字符串目标、请求baseRequest、HttpServletRequest请求、HttpServletResponse响应)
抛出IOException、ServletException
{
setContentType(“text/html;charset=utf-8”);
response.setStatus(HttpServletResponse.SC_OK);
baseRequest.setHandled(true);
response.getWriter().println(“Hello World”);
}
公共静态void main(字符串[]args)引发异常
{
服务器=新服务器(8080);
setHandler(新的HelloHandler());
server.start();
join();
}
}

使用org.eclipse.jetty version 8.1.1.v201215使其正常工作,并以编程方式从eclipse中的main启动它,调试为…,它在eclipse控制台中没有显示错误,运行正常

如果要使用EL 2.2,似乎还需要web.xml中的EXPRESSION_FACTORY context param

附加信息:我使用Servlet3.0和JSF2.1.7


如果您使用Maven,请注意包含的库(运行时、编译、测试等)的作用域。

使用org.eclipse.jetty version 8.1.1.v201215使其正常工作,并以编程方式从eclipse中的main启动,调试为…,它在eclipse控制台中不会显示错误,运行良好

如果要使用EL 2.2,似乎还需要web.xml中的EXPRESSION_FACTORY context param

附加信息:我使用Servlet3.0和JSF2.1.7


如果使用Maven,请注意所包含库的范围(运行时、编译、测试等)。

解决此问题的最佳方法是

解决这个问题的最好方法是

我知道有各种各样的方法可以让eclipse插件和maven插件发挥作用。我想要的是一个纯Java版本,它可以从多个执行主机上启动。我知道有各种各样的方法可以使用eclipse插件和maven插件来实现这一点。我想要的是一个纯Java版本——可以从多个执行主机启动。
import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;

public class HelloHandler extends AbstractHandler
{
    public void handle(String target,Request baseRequest,HttpServletRequest request,HttpServletResponse response) 
    throws IOException, ServletException
    {
        response.setContentType("text/html;charset=utf-8");
        response.setStatus(HttpServletResponse.SC_OK);
        baseRequest.setHandled(true);
        response.getWriter().println("<h1>Hello World</h1>");
    }

    public static void main(String[] args) throws Exception
    {
        Server server = new Server(8080);
        server.setHandler(new HelloHandler());

        server.start();
        server.join();
    }
}