Jersey 2.x 執行專案
阿新 • • 發佈:2018-11-08
現在我們已經有可以可以執行的專案了,讓我們隊這個專案進行一些測試吧。
你需要執行下面的一些命令列:
mvn clean test
|
這個命令將會對專案進行編譯後執行單元測試。
你應該會看到和下面類似的輸出表示專案編譯成功了:
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.742 s [INFO] Finished at: 2018-03-27T15:05:50-04:00 [INFO] Final Memory: 17M/205M [INFO] ------------------------------------------------------------------------
上面的輸出表示的是專案已經被編譯測試通過了。
我們可以開始使用獨立啟動方式啟動專案了,希望直接啟動專案,需要執行下面的 mvn 專案啟動命令:
mvn exec:java
|
這時候,專案應該已經正常啟動了,很快你應該可以在控制檯上看到下面的輸出:
Mar 27, 2018 3:10:28 PM org.glassfish.grizzly.http.server.NetworkListener start INFO: Started listener bound to [localhost:8080] Mar 27, 2018 3:10:28 PM org.glassfish.grizzly.http.server.HttpServer start INFO: [HttpServer] Started. Jersey app started with WADL available at http://localhost:8080/myapp/application.wadl Hit enter to stop it...
專案這個時候已經運行了,有關專案的 WADL 描述檔案可以通過 http://localhost:8080/myapp/application.wadl
URL 訪問到。
你可以考慮在你的控制檯中通過命令中 curl http://localhost:8080/myapp/application.wadl 訪問這個專案的描述檔案,你也可以直接將這個連結拷貝貼上到瀏覽器中直接進行檢視。
如果一切正常的話,你應該可以看到你部署的 RESTful 應用程式的的 WADL 格式的 XML 文件。希望檢視更多有關 WADL 的內容,請檢視章節 Chapter 17, WADL Support 。
部署成功後最後一件可以嘗試的事情就是與部署的 /myresource 資源進行資料互動。
你可以考慮直接把 http://localhost:8080/myapp/myresource 連結複製貼上到瀏覽器中,你也可以通過 curl 執行命令。
有關 curl 執行命令的結果如下:
$ curl http://localhost:8080/myapp/myresource Got it!
你可以看到,當你執行上面的命令後,控制檯輸出了 Got it!訊息,這個訊息是伺服器傳送給我們的資源。
我們也可以通過引數 -i 讓 curl 提供更多的資訊給我們來讓我們瞭解有關訊息傳送響應的相關資訊。
curl -i http://localhost:8080/myapp/myresource HTTP/1.1 200 OK Content-Type: text/plain Date: Sun, 26 May 2013 18:27:19 GMT Content-Length: 7 Got it!
注意到Content-Type: text/plain
是在 MyResource 類中用@Produces
註解的。
如果想看到更多返回資訊,或者想了解 curl 客戶端和執行的 Grizzly I/O 容器的互動,可以變換不同的 curl 命令引數。例如下面的例子可以讓 curl 客戶端輸出更多有關於伺服器通訊和互動的相關資訊:
$ curl -v http://localhost:8080/myapp/myresource * About to connect() to localhost port 8080 (#0) * Trying ::1... * Connection refused * Trying 127.0.0.1... * connected * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /myapp/myresource HTTP/1.1 > User-Agent: curl/7.25.0 (x86_64-apple-darwin11.3.0) libcurl/7.25.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.22 > Host: localhost:8080 > Accept: */* > < HTTP/1.1 200 OK < Content-Type: text/plain < Date: Sun, 26 May 2013 18:29:18 GMT < Content-Length: 7 < * Connection #0 to host localhost left intact Got it!* Closing connection #0 https://www.cwiki.us/display/JERSEYZH/Running+the+Project