1

Open Liberty は HTTP/2 をサポートしていますか、それとも server.xml での設定が必要ですか? 私は周りを見回しましたが、これに関連するものは何も見つかりません

現在、プッシュサーブレットがあります-

public class PushServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        PushBuilder pushBuilder = req.newPushBuilder();
         pushBuilder.path("push.css").push();


        try (PrintWriter respWriter = resp.getWriter();) {
            respWriter.write("<html>" +
                    "<img src='images/kodedu-logo.png'>" +
                    "</html>");
        }

    }
}

そして、newPushBuilder で NullPointerException を取得しています

メジャー/マイナー バージョンを実行したところ、pom に沿って Servlet 4.0 を実行していることを確認しました -

<dependencies>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>8.0</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

私のserver.xmlは次のように構成されています-

<!-- To access this server from a remote client add a host attribute to 
    the following element, e.g. host="*" -->
<httpEndpoint httpPort="9080" httpsPort="9443" id="defaultHttpEndpoint" >
   <httpOptions http2="enabled" />
</httpEndpoint>

また、私はJava9を実行しています

4

1 に答える 1