如何解决java中的500内部服务器错误?

s71maibg  于 2021-07-09  发布在  Java
关注(0)|答案(0)|浏览(401)

我在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内部服务器错误?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题