2017-02-03 3 views
0

Я написал ниже код для проверки состояния msgCode. Если msgCode не Success, он должен перенаправить файл error.jsp. Если это успех, он должен оставаться на одной странице. Когда я запускал код, страница всегда перенаправляется на error.jsp, хотя msgCode - Success. Какую ошибку я сделал в своем коде. Не могли бы вы помочь мне, если сможете. Заранее спасибо.страница всегда перенаправляется на страницу с ошибкой

<%@ page import="com.siebel.SurveyWebService.SurveyTester" %> 
<% 

    SurveyTester tc = new SurveyTester(); 
    tc.getResult(); 
    java.lang.String msgCode = tc.getResult2().getStatusCode(); 

    %> 
<%= msgCode%> 
<% 
if (msgCode.toString() != "Success") 
{  
    response.sendRedirect("error.jsp"); 
    } 
%> 
+2

Возможный дубликат [Как сравнить строки в Java?] (Http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java) – BackSlash

ответ

0

Прежде всего, вы должны использовать равный метод для сравнения строк. Во-вторых, хотя это не проблема на данный момент, но вы создаете объекты в своем jsp и подделываете ответ. tc.getResult2(). getStatusCode() не является фактическим ответом HTTP на сервере.

+0

Подделка ответа? Как? OP просто печатает номер, который он получил от метода, это вовсе не подделка ответа. – BackSlash

+0

он не должен этого делать, если он действительно хочет увидеть фактический ответ от сервера. Фактический код ответа генерируется сервером и не должен подделываться с помощью таких методов. – hhafeez

+0

Вы считаете, что msgCode - это код сервера: OP никогда не говорил об этом. И это ничего не притворяется, поскольку OP не подделывает ответ HTTP, а просто печатает номер (а http-код по-прежнему 200, если ответ действительно, независимо от того, какой номер он печатает). Вы можете распечатать все, что хотите, на веб-странице, а печать номера никогда не подделывает ответ. – BackSlash

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

  • Нет связанных вопросов^_^