You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2019/08/21 03:25:26 UTC

[GitHub] [servicecomb-java-chassis] yhs0092 commented on issue #1274: servicecomb怎么能直接访问HTML页面?

yhs0092 commented on issue #1274: servicecomb怎么能直接访问HTML页面?
URL: https://github.com/apache/servicecomb-java-chassis/issues/1274#issuecomment-523279713
 
 
   你说的辅助工具是运行于Web容器环境的吗?SpringBoot打成可执行jar包运行的话,默认是跑在一个内嵌的Tomcat里的。如果你的辅助工具需要依赖这么一个Web容器,那么它就无法在完全不修改代码及配置的情况下直接运行于ServiceComb-Java-Chassis默认开发模式了,因为java-chassis默认的传输方式是REST over Vertx的,也就是说它底层依赖的HTTP服务器不是Tomcat之类的Web服务器,而是Vertx。
   建议参考一下ServiceComb-Java-Chassis的文档,[REST over Vertx传输方式](https://docs.servicecomb.io/java-chassis/zh_CN/transports/rest-over-vertx.html) 和 [REST over Servlet传输方式](https://docs.servicecomb.io/java-chassis/zh_CN/transports/rest-over-servlet.html)。
   
   对于你的场景,比较简单的方法可能是把你的服务的传输方式改为 REST over Servlet 的,不过这需要你打war包放在独立的Tomcat里运行,或者考虑 [SpringBoot+ServiceComb-Java-Chassis 的web开发方式](https://docs.servicecomb.io/java-chassis/zh_CN/using-java-chassis-in-spring-boot/web-application.html),依赖SpringBoot的功能,你仍然可以打出一个可执行jar包来运行你的服务,底层的服务端传输部分仍然沿用了SpringBoot的配置。
   或者如果你想彻底使用java-chassis框架来做,不想用SpringBoot了的话,那么可以参考我们的inspector功能,看看我们框架里`org.apache.servicecomb.inspector.internal.InspectorImpl`类的`getStaticResource`方法是怎么做的,这里实际上是把静态页面请求当成了[文件下载](https://docs.servicecomb.io/java-chassis/zh_CN/general-development/file-download.html)来处理的。

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services