2013-08-07 2 views
-1

WebSphere распечатываетWebSphere проверка равенства отказ

8/7/13 11: 43: 47,318 000000AB SystemOut ДЕТАЛЬ расписка является нулевым? = Нуль

8/7/13 11: 43: 47,318 000000AB SystemOut ПОДРОБНО ложные

8/7/13 11: 43: 47,318 000000AB com.ibm.ws.webcontainer.servlet.ServletWrapper ТЯЖЕЛАЯ com.ibm .ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Исключение было выбрано одним из методов службы сервлета [ReceiptReportServlet] в приложении [MyWar_war]. Исключение создано: [java.lang.NullPointerException на servlet.ReceiptReportServlet.doGet (ReceiptReportServlet.java:61) в javax.servlet.http.HttpServlet.service (HttpServlet.java:575) в javax.servlet.http.HttpServlet .service (HttpServlet.java:668) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service (ServletWrapper.java:1227) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java : 776) на com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest (ServletWrapper.java:458) в com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest (ServletWrapperImpl.java:178) на ком .ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters (WebAppFilterManager.java:1032) at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest (CacheServletWrapper.java:87) at com.ibm.ws.webcontainer.WebContainer.handleRequest (WebContainer.java:909) at com.ibm.ws. webcontainer.WSWebContainer.handleRequest (WSWebContainer.java:1662) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready (WCChannelLink.java:200) at com.ibm.ws.http.channel.inbound.impl. HttpInboundLink.handleDiscrimination (HttpInboundLink.java:459) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest (HttpInboundLink.java:526) at com.ibm.ws.http.channel.inbound. impl.HttpInboundLink.processRequest (HttpInboundLink.java:312) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready (HttpInboundLink.java:283) at com.ibm .ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators (NewConnectionInitialReadCallback.java:214) на com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete (NewConnectionInitialReadCallback.java:113) в com.ibm.ws .tcp.channel.impl.AioReadCompletionListener.futureCompleted (AioReadCompletionListener.java:175) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback (AbstractAsyncFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions (AsyncChannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed (AsyncFuture.java:138) at com.ibm.io.async.ResultHandler.complete (ResultHandler.java:204) at com .ibm.io.async.ResultHandler.runEventProcessingLoop (ResultHandler.java:775) at com .ibm.io.async.ResultHandler $ 2.run (ResultHandler.java:905) в com.ibm.ws.util.ThreadPool $ Worker.run (ThreadPool.java:1862) ]

вместо

получение - null? = Нуль

правда

+1

Можете ли вы заменить скриншоты копий/вставленных фрагментов кода и ваших журналов? – mthmulders

+0

'запрос' не установлен. Код для этого не является частью вашего вопроса. –

ответ

4

Это больше похоже на проблемы с порядком действий, а не WAS.Ваша строка, которая печатает

System.out.println("receipt is null? " + receipt == null); 

проблема. Это не выводит true или false, если объект получения имеет значение null или нет. То, что он делает, является конкатенацией строки "receipt is null? " с результатом метода получения .toString(), и THEN проверяет, равен ли он null. Вот почему вы видите, что на этой строке печатается только ложь.

Если вы действительно хотите проверить наличие нулевого объекта, добавьте подходящую() вокруг нулевой проверки.

System.out.println("receipt is null? " + (receipt == null)); 

Это должно напечатать истину или ложь, как вы ожидаете.

Что касается того, почему квитанция является нулевой в одной среде, но не является нулевой в другом, вопрос о том, что у нас недостаточно информации для ответа. Фрагменты кода не показывают нам, откуда этот объект или создается.

Смежные вопросы