现在我们已经有可以可以运行的项目了,让我们队这个项目进行一些测试吧。

你需要运行下面的一些命令行:

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 startINFO: Started listener bound to [localhost:8080]Mar 27, 2018 3:10:28 PM org.glassfish.grizzly.http.server.HttpServer startINFO: [HttpServer] Started.Jersey app started with WADL available at http://localhost:8080/myapp/application.wadlHit enter to stop it...
项目这个时候已经运行了,有关项目的 WADL 描述文件可以通过 http://localhost:8080/myapp/application.wadl URL 访问到。
你可以考虑在你的控制台中通过命令中 curl http://localhost:8080/myapp/application.wadl 访问这个项目的描述文件,你也可以直接将这个链接拷贝粘贴到浏览器中直接进行查看。

如果一切正常的话,你应该可以看到你部署的 RESTful 应用程序的的 WADL 格式的 XML 文档。希望查看更多有关 WADL 的内容,请查看章节  。

部署成功后最后一件可以尝试的事情就是与部署的 /myresource 资源进行数据交互。

你可以考虑直接把   链接复制粘贴到浏览器中,你也可以通过 curl 执行命令。

有关 curl 执行命令的结果如下:

$ curl http://localhost:8080/myapp/myresourceGot it!

你可以看到,当你执行上面的命令后,控制台输出了 Got it!消息,这个消息是服务器发送给我们的资源。

我们也可以通过参数 -i 让 curl 提供更多的信息给我们来让我们了解有关消息发送响应的相关信息。

curl -i http://localhost:8080/myapp/myresourceHTTP/1.1 200 OKContent-Type: text/plainDate: Sun, 26 May 2013 18:27:19 GMTContent-Length: 7Got 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 intactGot it!* Closing connection #0