2012-06-12 19 views
18

webappが用意されていますが、タイトルとしてユーザー名を含む小さなドロップダウンメニューを追加したかっただけです。これは私のJSPコードです:jspのセッション属性を印刷する

   <i class="icon-user"></i> 
       <% 
        session.getAttribute("name"); 
       %> 
       <span class="caret"></span> 

と、セッションは私がログインしてるため、セッションがあり

9:    <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"> 
10:      <i class="icon-user"></i> 
11:      <% 
12:       session.getAttribute("name"); 
13:      %> 
14:      <span class="caret"></span> 
15:     </a> 

解決できない

サイス

敬具、

+0

あなたはどのフレームワークを使用していますか? –

答えて

36

ELを使用することができます。これは、JSPで推奨されています。

​​

それともname値はHTMLが安全であるならば、あなたはJSPがアクセスセッションを許可していることを確認してください

${sessionScope.name} 

を使用することができます。

<%@ page session="true" %> 

コアJSTLを使用するには、次のコードが含まれていることを確認してください。

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
+0

ご協力ありがとうございます。これで解決しました。 Japsにも感謝! – user1007522

+0

@Pau 'name'値は、HTML安全であることはどういう意味ですか? – UnKnown

1

@Pau Kiat Weeの回答に同意します。しかし、このユーザー名をmodelmapのコントローラーから設定してELで簡単に使用することもできます。それも良い選択肢になります。これがあなたを助けることを願ってください。乾杯。あなたが代替を試すことができます

5

<% request.getSession().getAttribute("name") %> 

あなたのpageディレクティブにsession="false"を設定しておく必要がありますので、解決取得されていないsessionであることを理由。

Read this for further reference。あなたのJSPで

1) get your parameter: 

    String param = request.getParameter("param"); 

2) send it to the request object as an attribute: 

    request.setAttribute("param", param); 

+0

この代替案は機能しませんでした –

0
サーブレットで

use JSTL, and EL to return the attribute you sent from your servlet: 

    <input type="text" name="param" value="<c:out value="${param}" />" /> 

をし、そこに行きます。

関連する問題