我在java中得到错误500内部服务器错误
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transformToListClass': Invocation of init method failed; nested exception is java.lang.RuntimeException: org.springframework.web.client.HttpServerErrorException$InternalServerError: 500 Internal Server Error: [{"timestamp":"2020-08-20T20:48:50.993+0000","status":500,"error":"Internal Server Error","message":"Request processing failed; nested exception is java.lang.Exception: java.lang.RuntimeException: error while fopping..","path":"/v1/en/E_TEMPLATE"}]
Caused by: java.lang.RuntimeException: org.springframework.web.client.HttpServerErrorException$InternalServerError: 500 Internal Server Error: [{"timestamp":"2020-08-20T20:48:50.993+0000","status":500,"error":"Internal Server Error","message":"Request processing failed; nested exception is java.lang.Exception: java.lang.RuntimeException: error while fopping..","path":"/v1/en/E_TEMPLATE"}]
Caused by: org.springframework.web.client.HttpServerErrorException$InternalServerError: 500 Internal Server Error: [{"timestamp":"2020-08-20T20:48:50.993+0000","status":500,"error":"Internal Server Error","message":"Request processing failed; nested exception is java.lang.Exception: java.lang.RuntimeException: error while fopping..","path":"/v1/en/E_TEMPLATE"}]
我已经打开了两个spring应用程序,其中一个在端口上运行 8080
另一个在港口运行 8013
.
我从港口的那家寄来如下邮递要求 8080
到港口的那个 8013
:
我还使用嵌入在restemplate头中的基本身份验证
public ImageDescriptor generateImage(String payLoad, String templateName) {
try {
ImageDescriptor descriptor = new ImageDescriptor();
String MEl = "http://localhost:8013/v1/en";
String eURL = MEL.concat(Constant.F_SLASH).concat(templateName);
log.info("payload" + payLoad);
ResponseEntity<Resource> responseEntity = restTemplate.exchange(
eURL,
HttpMethod.POST,
ncbiService.getStringHttpEntityWithPayload(payLoad),
Resource.class);
log.info(String.format("%s generateImage Result: [%s] ", responseEntity.getBody().getInputStream()));
descriptor.setInputStream(Objects.requireNonNull(responseEntity.getBody()).getInputStream());
convert(responseEntity.getBody().getInputStream(), "sherrr.pdf");
log.info("file is:"+ convert(responseEntity.getBody().getInputStream(), "sherrr.pdf"));
return descriptor;
} catch (IOException e) {
e.printStackTrace();
log.error(" generate image failed " + e.getMessage());
throw new RuntimeException(e);
}
}
下面是8013端口的服务,我在8080端口调用它:
@RestController()
@RequestMapping("/v1/e")
public class EcrionController {
@Autowired
private FOPService fopService;
@PostMapping(path = "{documentType}", consumes = "application/json", produces = "application/json")
public ResponseEntity<InputStreamResource> createDocument(@PathVariable DocType documentType, @RequestBody String payload) throws Exception {
InputStream inputStream = null;
try {
LOGGER.info(String.format("Document Type: ", documentType.toString()));
LOGGER.info(String.format("PayLoad : %s", payload));
inputStream = fopService.doFOP(payload, documentType);
InputStreamResource streamResource = new InputStreamResource(inputStream);
return ResponseEntity.ok()
.contentType(MediaType.parseMediaType(MediaType.APPLICATION_PDF_VALUE))
.body(streamResource);
} catch (Exception ex) {
LOGGER.error("Error", ex);
throw new Exception(ex);
}
}
8013端口的安全服务如下
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Value("${spring.security.user.name}")
private String username;
@Value("${spring.security.user.password}")
private String password;
@Value("${spring.security.user.roles}")
private String roles;
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.authorizeRequests().anyRequest().authenticated()
.and()
.httpBasic();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser(username)
.password(passwordEncoder().encode(password))
.roles(roles);
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
如何消除java中的500内部服务器错误?
暂无答案!
目前还没有任何答案,快来回答吧!