GVKun编程网logo

如何配置Spring-Boot应用程序以继续使用RestEasy?(spring boot应用)

15

如果您对如何配置Spring-Boot应用程序以继续使用RestEasy?感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于如何配置Spring-Boot应用程序以继续使用Re

如果您对如何配置Spring-Boot应用程序以继续使用RestEasy?感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于如何配置Spring-Boot应用程序以继续使用RestEasy?的详细内容,我们还将为您解答spring boot应用的相关问题,并且为您提供关于java – 如何从docker命令行设置参数来配置spring boot应用程序?、java – 如何配置Spring-Boot应用程序继续使用RestEasy?、Java如何为Spring Boot应用程序配置端口、Jboss EAP上的springBoot应用程序,未放置servlet上下文的有价值信息。

本文目录一览:

如何配置Spring-Boot应用程序以继续使用RestEasy?(spring boot应用)

如何配置Spring-Boot应用程序以继续使用RestEasy?(spring boot应用)

我有一个旧的Web应用程序(纯servlet,没有Spring),我想以胖子的身份运行。这个程序提供了很多REST服务。我不想修改旧代码。
如何配置Spring-Boot应用程序以继续使用RestEasy?

答案1

小编典典

您可以使用RESTEasy Spring Boot启动器。这是您的操作方式:

添加POM依赖性

将下面的Maven依赖项添加到您的Spring Boot应用程序pom文件中。

<dependency>   <groupId>com.paypal.springboot</groupId>   <artifactId>resteasy-spring-boot-starter</artifactId>   <version>2.1.1-RELEASE</version>   <scope>runtime</scope></dependency>

注册JAX-RS应用程序类

只需将您的JAX-RS应用程序类(Application的子类)定义为Spring bean,它将被自动注册。请参见下面的示例。见 JAX-
RS应用程序的注册方法,
在如何使用的RESTEasyspring引导启动进一步的信息。

package com.test;import org.springframework.stereotype.Component;import javax.ws.rs.ApplicationPath;import javax.ws.rs.core.Application;@Component@ApplicationPath("/sample-app/")public class JaxrsApplication extends Application {}

注册JAX-RS资源和提供者

只要将它们定义为Spring bean,它们就会被自动注册。注意,JAX-RS资源可以是单例的,也可以是请求范围的,而JAX-RS提供程序必须是单例的。

有关更多信息,请访问项目GitHub页面。

java – 如何从docker命令行设置参数来配置spring boot应用程序?

java – 如何从docker命令行设置参数来配置spring boot应用程序?

我有一个带有yml的spring boot应用程序,可以在docker containter中配置它.
像这样的东西:

 spring:   application:
   name: micro-example
   config:
     uri: ${vcap.services.config-service.credentials.uri:http://xxx.xxx.xx.73:8888}

正如你所看到的,我的配置中有一个ip硬编码,这是一个坏主意,因为编译仅适用于服务器.
是否存在外部化ip的方法,或者从docker命令行或更好的想法设置它?

解决方法:

有很多不同的方法可以做到:

1)设置环境变量(在shell中使用export VCAP_SERVICES_CONfig-SERVICE_CREDENTIALS_URI =’http://example.com’,或在Dockerfile中使用ENV)

2)将其作为JVM参数传递(java -Dvcap.services.config-service.credentials.uri = http://example.com -jar app.jar)

3)将其作为命令行参数传递(java -jar app.jar –vcap.services.config-service.credentials.uri = http://example.com)

4)Spring Boot还从config / application.properties或application.properties读取值,这些值与可执行JAR文件位于同一目录中,因此可以提供此文件(可以使用VOLUME)并覆盖JAR中的设置

另见:http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

java – 如何配置Spring-Boot应用程序继续使用RestEasy?

java – 如何配置Spring-Boot应用程序继续使用RestEasy?

我有一个旧的Web应用程序(纯servlet,没有 Spring),我想以fat-jar的形式运行.
这个应用程序提供了很多REST服务.我不想修改旧代码.
如何配置Spring-Boot应用程序继续使用RestEasy?

解决方法

您可以使用RESTEasy Spring Boot启动程序.这是你如何做到的:

添加POM依赖项

将下面的Maven依赖项添加到Spring Boot应用程序pom文件中.

<dependency>
   <groupId>com.paypal.springboot</groupId>
   <artifactId>resteasy-spring-boot-starter</artifactId>
   <version>2.1.1-RELEASE</version>
   <scope>runtime</scope>
</dependency>

注册JAX-RS应用程序类

只需将您的JAX-RS应用程序类(Application的子类)定义为Spring bean,它就会自动注册.请参阅下面的示例.有关详细信息,请参阅How to use RESTEasy Spring Boot Starter中的JAX-RS应用程序注册方法部分.

package com.test;

import org.springframework.stereotype.Component;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;

@Component
@ApplicationPath("/sample-app/")
public class JaxrsApplication extends Application {
}

注册JAX-RS资源和提供程序

只需将它们定义为Spring bean,它们就会自动注册.请注意,JAX-RS资源可以是单例或请求作用域,而JAX-RS提供者必须是单例.

Further information at the project GitHub page.

Java如何为Spring Boot应用程序配置端口

Java如何为Spring Boot应用程序配置端口

如何解决Java如何为Spring Boot应用程序配置端口?

正如在所述的文档任一组server.port使用命令行选项来JVM中的系统属性-Dserver.port=8090或添加application.properties/src/main/resources/

server.port=8090

对于随机端口使用

server.port=0

解决方法

spring

如何配置Spring Boot应用程序侦听的TCP / IP端口,因此它不使用默认端口8080。

Jboss EAP上的springBoot应用程序,未放置servlet上下文

Jboss EAP上的springBoot应用程序,未放置servlet上下文

我有一个非常简单的spring boot应用程序,我想将其部署到Jboss EAP。这是我的简单应用程序类:

@SpringBootApplicationpublic class MayurApplication extends SpringBootServletInitializer{    public static void main(String[] args) {        SpringApplication.run(MayurApplication.class, args);    }    @Override    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {        return application.sources(applicationClass);    }    private static Class<MayurApplication> applicationClass = MayurApplication.class;}@RestControllerclass GreetingController {    @RequestMapping("/hello/{name}")    String hello(@PathVariable String name) {        return "Hello, " + name + "!";    }}

而且我的pom.xml也很基础。当我在Tomcat上运行此应用程序时,使用嵌入式Tomcat随Spring
Boot一起提供。只需单击一下,一切都变得像魅力。我可以访问http://localhost:8080/demo/hello/World,它也可以工作。

现在,我试图使其与Jboss EAP兼容,使之脱离spring-boot-starter-
web,从而禁用了Tomcat,并将其转换为war项目。(如http://spring.io/blog/2014/03/07/deploying-
spring-boot-applications文章所述)。

我还补充说:

<dependency>                  <groupId>javax.servlet</groupId>                  <artifactId>javax.servlet-api</artifactId>                 <scope>provided</scope>            </dependency>,

因为它在抱怨。

现在,所有这些都可以很好地编译并发动战争。当我将此战争复制到jboss部署时,可以看到它已成功部署在控制台上。但是其余的api
http://localhost:8080/demo/hello/World不能正常工作,并不断在浏览器上引发错误:

JBWEB000068: message /demo/hello/WorldJBWEB000069: description JBWEB000124: The requested resource is not available.

我究竟做错了什么?

答案1

小编典典

我在JBoss 6.4.0中遇到了类似的问题。和Spring Boot 1.3与Tiles 3结合使用。安装Jboss补丁jboss-eap-6.4.6-patch.zip之后,问题已解决。

修补后,我不需要使用设置server.servlet-path = / *

显然,“ /”在Jboss EAP 6.3上不起作用,但是“ / *”有效。他们似乎已经用wildfly 8修复了它

今天关于如何配置Spring-Boot应用程序以继续使用RestEasy?spring boot应用的介绍到此结束,谢谢您的阅读,有关java – 如何从docker命令行设置参数来配置spring boot应用程序?、java – 如何配置Spring-Boot应用程序继续使用RestEasy?、Java如何为Spring Boot应用程序配置端口、Jboss EAP上的springBoot应用程序,未放置servlet上下文等更多相关知识的信息可以在本站进行查询。

本文标签: