我想创建一个 Spring Boot REST Web服务,并将其部署并发布到传统Websphere 9 应用服务器中。可能吗 ? 我可能会遇到什么挑战?有人可以提供一些参考资料吗?
答案 0 :(得分:0)
WebSphere Traditional和WebSphere Liberty均支持Spring启动。
您是否正在寻找类似的东西?
http://www.adeveloperdiary.com/java/spring-boot/deploy-spring-boot-application-ibm-liberty-8-5/
答案 1 :(得分:0)
是的,可以这样做。这不是一个好的设计,但是可以做到。回到我在一家大银行工作的那天,他们在IBM Websphere(不是自由)中部署了java spring-boot微服务。
如何做到?
1)将可部署程序打包为war。您可以通过编辑pom并将其打包为WAR来实现。
2)您可以在springboot入门类中添加连接字符串config,或获取在websphere实例中创建的JNDI。我们观察到,当应用程序使用Websphere JNDI而不是应用程序创建的连接bean时,API的性能得到了改善。
3)如果使用IBM MQ,最好的做法是在MQ上创建一个基于非ssl和ssl的通道,并为MQ连接获得一个JNDI。
4)如果像我们一样计划在应用程序中创建MQ连接bean,请确保JKS文件具有组织的所有有效签名者集。
我们面临的问题
1)我们的应用程序使用了很多第三方规则引擎,例如drools,因此请确保将websphere server.xml配置为Servlet 3.1或更高版本
2)Webshpere管理控制台很有帮助,但不要盲目相信它是否对您的容器显示绿色,请始终检查应用日志中是否有错误。
3)常见的痛点是与IBM MQ主机建立成功的连接。获取MQ服务器管理员以对所有MQRC错误进行故障排除。
4)如果计划将Oracle用作后端,请确保DBA已为您创建了一个钱包,以同时启用SSL和非SSL连接。一些组织对非SSL数据库连接很挑剔。如果您将webspehere JNDI用于数据库连接,则更容易处理所有这一切。
让我知道这是否有帮助。