2017-02-03 4 views
0

にリダイレクトされました。以下のコードを書いて、msgCodeの状態をテストしました。 msgCodeがSuccessでない場合は、error.jspファイルにリダイレクトする必要があります。それが成功なら、同じページにとどまるべきです。コードを実行すると、msgCodeは成功ですが、ページは常にerror.jspにリダイレクトされます。私のコードで何をしたのですか?あなたができるなら、私を助けてくれますか?少し早いですがお礼を。ページは常にエラーページ

<%@ 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

まず、文字列比較にはequalメソッドを使用する必要があります。第二に、それは現時点では問題ではありませんが、あなたはあなたのJSPにオブジェクトを作成し、その応答を偽っています。 tc.getResult2()。getStatusCode()は、サーバーからの実際のHTTPレスポンスではありません。

+0

応答を偽っていますか?どうやって? OPはちょうど彼が方法から得た数字を印刷しています、これは全く応答を偽っていません。 – BackSlash

+0

サーバーからの実際の応答を実際に見たい場合、彼はそれを行うべきではありません。実際のレスポンスコードはサーバによって生成され、そのようなメソッドでは偽造されてはいけません。 – hhafeez

+0

あなたはmsgコードがサーバーコードであると仮定しています。 OPはhttpレスポンスを偽っているのではなく、数字だけを表示しているので(何か数字が何であっても応答が有効であればHTTPコードは200です)、何も見せかけているわけではありません。あなたはウェブページ上であなたが望むものすべてを印刷することができ、数字を印刷しても応答は偽造されません。 – BackSlash

関連する問題