Java POST:500仅在Chrome中出现内部服务器错误

Java POST:500仅在Chrome中出现内部服务器错误,java,google-chrome,http,angular,spring-boot,Java,Google Chrome,Http,Angular,Spring Boot,我有一个Spring Boot后端应用程序和一个Angular 2前端应用程序。 每次尝试发布时,我都会收到内部服务器错误500。这只发生在Chrome中。所有的get方法都工作得非常好。我不知道问题出在哪里 角度中的http服务: addDomain(domainEntity:DomainEntity){ let headers = new Headers({ 'Content-Type': 'application/json' }); let opti

我有一个Spring Boot后端应用程序和一个Angular 2前端应用程序。 每次尝试发布时,我都会收到
内部服务器错误500
。这只发生在Chrome中。所有的get方法都工作得非常好。我不知道问题出在哪里

角度中的http服务:

addDomain(domainEntity:DomainEntity){
    let headers = new Headers({
        'Content-Type': 'application/json'
    });
    let options = new RequestOptions({
        headers: headers
    });
    let body = JSON.stringify(domainEntity)

    return this._http.post(this.baseURL+'addDomain', body, options);   
}
Spring Boot UIRestController:

@RequestMapping(method=RequestMethod.POST, value= "/addDomain", produces="application/json")
    public DomainEntity addDomain(HttpServletRequest request, HttpServletResponse response, @RequestBody DomainEntity domain, Model model);
服务:

public DomainEntity addDomain(DomainEntity domain, Model model) {
    String url =  this.webServiceProperties.webUserBaseURL+"addDomain/";

    HttpHeaders headers = new HttpHeaders();   
    headers.setContentType(MediaType.APPLICATION_JSON);  
    HttpEntity<DomainEntity> entity = new HttpEntity<DomainEntity>(domain, headers); 

    try{
        RestTemplate restTemplate = new RestTemplate();
        ResponseEntity<DomainEntity> responseEntity= restTemplate.exchange(
                UriComponentsBuilder.fromHttpUrl(url).build().encode().toUri(),
                HttpMethod.POST, 
                entity,
                DomainEntity.class);

        return responseEntity.getBody();
    }catch(Exception e1){
        e1.printStackTrace();   
    }

    return null;
}

您可以从网络监视器(dev-tool-F12)获得来自chrome的所有请求(例如,在curl中)


如果您得到了所有的curl,您可以调查哪个请求产生了错误。

您可以从网络监视器(dev-tool-F12)获得来自chrome的所有请求(例如在curl中)


如果您得到了所有curl,您可以调查哪个请求产生了错误。

确定。最后我解决了这个问题。 我仍然不能理解这一点,但它起了作用

起初我使用的是Spring Boot版本1.3.5,现在我已经安装了Spring Boot 1.4.0的新版本


现在一切正常。这个问题也解决了图标的显示问题。因为它们在Chrome和IE中也不起作用。

好的。最后我解决了这个问题。 我仍然不能理解这一点,但它起了作用

起初我使用的是Spring Boot版本1.3.5,现在我已经安装了Spring Boot 1.4.0的新版本


现在一切正常。这个问题也解决了图标的显示问题。因为它们在Chrome和IE中也不起作用。

看看你的tomcat日志。错误500通常由应用程序级异常生成,该异常在该级别未被捕获,并由容器处理。请查看tomcat日志。错误500通常由应用程序级异常生成,该异常在该级别未被捕获,并由容器处理。
zone.js:101 POST http://myURL/addDomain 500 (Internal Server Error)scheduleTask @ zone.js:101ZoneDelegate.scheduleTask @ zone.js:336Zone.scheduleMacroTask @ zone.js:273(anonymous function) @ zone.js:122send @ VM54:3(anonymous function) @ http.umd.js:1327Observable.subscribe @ Observable.ts:93DomainListManagementComponent.addDomain @ domainListManagement.component.js:63_View_DomainListManagementComponent1._handle_click_72_0 @ DomainListManagementComponent.template.js:1046(anonymous function) @ core.umd.js:10111(anonymous function) @ platform-browser.umd.js:2088(anonymous function) @ platform-browser.umd.js:2260ZoneDelegate.invoke @ zone.js:323onInvoke @ core.umd.js:6075ZoneDelegate.invoke @ zone.js:322Zone.runGuarded @ zone.js:230NgZoneImpl.runInnerGuarded @ core.umd.js:6108NgZone.runGuarded @ core.umd.js:6335outsideHandler @ platform-browser.umd.js:2260ZoneDelegate.invokeTask @ zone.js:356Zone.runTask @ zone.js:256ZoneTask.invoke @ zone.js:423
domainListManagement.component.js:63 
Response {_body: "<html><head><title>Apache Tomcat/7.0.65 - Error re…hade"><h3>Apache Tomcat/7.0.65</h3></body></html>", status: 500, ok: false, statusText: "Ok", headers: Headers…}
2016-08-17 15:10:01.706 ERROR 14157 --- [bio-8007-exec-1] o.s.boot.context.web.ErrorPageFilter     : Forwarding to error page from request [/admin-ui-service/addDomain] due to exception [null]

java.lang.NullPointerException: null
    at org.springframework.web.util.WebUtils.isSameOrigin(WebUtils.java:816) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.cors.DefaultCorsProcessor.processRequest(DefaultCorsProcessor.java:76) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.handler.AbstractHandlerMapping$CorsInterceptor.preHandle(AbstractHandlerMapping.java:503) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:956) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:895) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:967) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:869) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) ~[tomcat-servlet-3.0-api.jar:na]
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:843) ~[spring-webmvc-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) ~[tomcat-servlet-3.0-api.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat7-websocket.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:87) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121) ~[spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.springframework.boot.context.web.ErrorPageFilter.doFilter(ErrorPageFilter.java:120) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
    at org.springframework.boot.context.web.ErrorPageFilter.access$000(ErrorPageFilter.java:61) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
    at org.springframework.boot.context.web.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:95) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) [spring-web-4.2.6.RELEASE.jar:4.2.6.RELEASE]
    at org.springframework.boot.context.web.ErrorPageFilter.doFilter(ErrorPageFilter.java:113) [spring-boot-1.3.5.RELEASE.jar:1.3.5.RELEASE]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) [catalina.jar:7.0.65]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) [catalina.jar:7.0.65]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) [catalina.jar:7.0.65]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) [catalina.jar:7.0.65]
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) [catalina.jar:7.0.65]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) [catalina.jar:7.0.65]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) [catalina.jar:7.0.65]
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956) [catalina.jar:7.0.65]
    at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:249) [catalina.jar:7.0.65]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) [catalina.jar:7.0.65]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) [catalina.jar:7.0.65]
    at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:190) [tomcat-coyote.jar:7.0.65]
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625) [tomcat-coyote.jar:7.0.65]
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) [tomcat-coyote.jar:7.0.65]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_95]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_95]
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-coyote.jar:7.0.65]
    at java.lang.Thread.run(Thread.java:745) [na:1.7.0_95]