使用:
通过此配置,我将生成一个客户端来访问 Rest API。
我正在尝试为自动生成的 RestTemplate 设置自定义超时。我没有找到任何包含详细规范的文档。
这是配置 Maven 插件的地方:
<plugins>
<plugin>
<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>${openapi-generator.version}</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<skipIfSpecIsUnchanged>true</skipIfSpecIsUnchanged>
<inputSpec>openapi/ability-api.yml</inputSpec>
<generatorName>java</generatorName>
<library>resttemplate</library>
<apiPackage>com.my-org.api</apiPackage>
<modelPackage>com.my-org.api.dto</modelPackage>
<modelNameSuffix>DTO</modelNameSuffix>
<generateApis>true</generateApis>
<generateApiDocumentation>false</generateApiDocumentation>
<generateApiTests>false</generateApiTests>
<generateModels>true</generateModels>
<generateModelDocumentation>false</generateModelDocumentation>
<generateModelTests>false</generateModelTests>
<generateSupportingFiles>true</generateSupportingFiles>
<configOptions>
<java8>true</java8>
<dateLibrary>java8</dateLibrary>
<useTags>true</useTags>
<oas3>true</oas3>
<useAbstractionForFiles>true</useAbstractionForFiles>
</configOptions>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.my-org</groupId>
<artifactId>my-artifact-id</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
我在哪里可以找到如何操作?
您可以创建自定义的
RestTemplate
并将其传递给 ApiClient
实例。
int timeout = 2000;
HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory();
factory.setReadTimeout(timeout);
RestTemplate restTemplate new RestTemplate(factory);
MyRestApi api = new MyRestApi();
api.setApiClient(new ApiClient(restTemplate));
希望这有帮助。