转载请注明来源-作者@loongshawn:http://blog.csdn.net/loongshawn/article/details/61191925,建议读者阅读原文,确保获得完整的信息
1.异常片段
Java代码中,在进行URL url = new URL(urllink)操作时,提示以下异常信息,该类异常主要问题出在参数urllink上面。
异常片段1
java.net.MalformedURLException
at java.net.URL.<init>(URL.java:
619)
at java.net.URL.<init>(URL.java:
482)
at java.net.URL.<init>(URL.java:
431)
解决方案: 上述异常原因是urllink为空。将该参数调整为有效url即可。
异常片段2
java.net.MalformedURLException: no protocol:
at java.net.URL.<init>(URL.java:
585)
at java.net.URL.<init>(URL.java:
482)
at java.net.URL.<init>(URL.java:
431)
解决方案: 上述异常原因是urllink前缀http://没有带上,确保url形如http://blog.csdn.net/loongshawn/article/details/61191925。将该参数调整为有效url即可。
2.异常全貌
java.net.MalformedURLException
at java.net.URL.<init>(URL.java:
619)
at java.net.URL.<init>(URL.java:
482)
at java.net.URL.<init>(URL.java:
431)
at com.autonavi.utils.kelude.Bash64Util.getBash64FromUrl(Bash64Util.java:
29)
at com.autonavi.method.kelude.AoneKeludeAttachmentCreate.action(AoneKeludeAttachmentCreate.java:
70)
at com.autonavi.dispatcher.Dispatcher.gaokuaiAoneAttachmentCreate(Dispatcher.java:
329)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
43)
at java.lang.reflect.Method.invoke(Method.java:
606)
at com.autonavi.dispatcher.Dispatcher.dispatcherCenter(Dispatcher.java:
65)
at com.autonavi.controller.HomeController.view(HomeController.java:
92)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
43)
at java.lang.reflect.Method.invoke(Method.java:
606)
at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:
221)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:
136)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:
110)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:
832)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:
743)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:
85)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:
961)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:
895)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:
967)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:
869)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:
648)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:
843)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:
729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
292)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:
52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:
99)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:
107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:
87)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:
107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:
77)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:
107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:
121)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:
107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
240)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
207)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
502)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
79)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
528)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:
1099)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:
670)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:
1520)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:
1476)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:
1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:
615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:
61)
at java.lang.Thread.run(Thread.java:
745)
Caused by: java.lang.NullPointerException
at java.net.URL.<init>(URL.java:
524)
...
64 more
2017-
03-
10-
09-
53 [http-nio-
7001-exec-
1] [com.autonavi.utils.kelude.Bash64Util] [ERROR] - Bash64Utils.getBash64FromUrl MalformedURLException error: java.net.MalformedURLException
异常分析,注意上述异常末尾提示信息:Caused by: java.lang.NullPointerException,可以推断出,是由于NullPointerException导致的MalformedURLException ,因此问题就出在urllink为空上。