

AngulerJSで入力があるモーダル画面を作成したのですが  
Inputタグの入力値をサーバで受け取ると文字化けしています。  
この場合文字セットをどこで指定すればよいのでしょうか？  
（なお、モーダル画面用のスクリプトにはmetaタグにて文字セットを設定しています）

[code]

    <script type="text/ng-template" id="SeikyusakiInsert">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        </head>
        <body>
            <div class="modal-content">
                <div class="modal-header">
                    <div class="modal-header modal-dialog-header">
                        <h3>請求先一覧</h3>
                    </div>
                </div>
                <div class="modal-body modal-dialog-body-seikyusaki">
                    <div class="form-group">
                        <label class="col-sm-3 col-md-3 col-lg-3 control-label" for="InputCampanyName">会社名</label>
                        <div class="col-sm-6 col-md-6 col-lg-6">
                            <input type="text" class="form-control" name="CampanyName" id="CampanyName" ng-model="CampanyName"  placeholder="会社名" size="20" maxlength="60"  >
                        </div>
                        <div class="col-sm-3 col-md-3 col-lg-3">
                            <font coloer="red">${ErrCampanyName}</font>
                        </div>
                    </div>
                    <br>
                    <div class="form-group">
                        <label class="col-sm-3 col-md-3 col-lg-3 control-label" for="InputCampanyKanaName">会社カナ名</label>
                        <div class="col-sm-6 col-md-6 col-lg-6">
                            <input type="text" class="form-control" name="CampanyKana" id="CampanyKana" ng-model="CampanyKana" placeholder="会社カナ名" size="20" maxlength="60" >
                        </div>
                        <div class="col-sm-3 col-md-3 col-lg-3">
                            <font coloer="red">${ErrCampanyKana}</font>
                        </div>
                    </div>
                    <br>
                    <div class="form-group">
                        <label class="col-sm-3 col-md-3 col-lg-3 control-label" for="InputOrganization">組　織</label>
                        <div class="col-sm-4 col-md-4 col-lg-4">
                                <select name="select_Soshiki" class="form-control" ng-value="valueSoshiki" ng-model="select_Soshiki" ng-options="Soshikimenu.CD_Code1 as Soshikimenu.CD_Name for Soshikimenu in SoshikiList ">
                                </select>
                        </div>
                        <div class="col-sm-2 col-md-2 col-lg-2">
                            <font coloer="red">${ErrOrganization}</font>
                    </div>
                    <br>
                </div>
                <div class="modal-footer modal-dialog-footer" >
                    <button type="button" class="btn btn-success" ng-click="modalSeikyusakiUpdate()">登録</button>
                    <button type="button" class="btn btn-success" ng-click="$close()">閉じる</button>
                </div>
            </div>
        </body>
    </script>
    
[/code]


CC BY-SA 3.0
2017-02-25T10:46:57.680
32943
2021-12-17T00:01:00.080
2017-02-27T10:49:46.450
18852
18852
question
angularjs bootstrap spring tomcat
モーダル画面内の入力値が文字化けする(TOMCATによる文字化け）


色々と調べた結果Tomcat5.X以降においてGET時に日本語が文字化けするとのことでした  
参照  
<http://ameblo.jp/spring-beginner/entry-10429339939.html>  
そこでサーバー側（私の場合、Eclipseのテスト用TOMCAT7）のserver.xmlの以下のパラメータに以下の項目を追加したら治りました。

[code]

    <Connector acceptCount="100" connectionTimeout="20000" 
     disableUploadTimeout="true" enableLookups="false" 
     maxHttpHeaderSize="8192" maxSpareThreads="75" maxThreads="150" 
     minSpareThreads="25" port="8080" redirectPort="8443"
    useBodyEncodingForURI="true"<==これを追加
     /> 
    
[/code]

ただし、今回はモーダル画面からPOSTしているのでちょっと違いますが、ちなみに  
POSTに関しては（親画面はPOSTの処理）web.xmlに対して以下のパラメータを入れてあります

[code]

    <!-- 文字コード対応 -->
        <filter>
            <filter-name>characterEncodingFilter</filter-name>
            <filter-class>
            org.springframework.web.filter.CharacterEncodingFilter
            </filter-class>
            <init-param>
            <param-name>encoding</param-name>
            <param-value>UTF-8</param-value>
            </init-param>
            <init-param>
            <param-name>forceEncoding</param-name>
            <param-value>true</param-value>
            </init-param>
        </filter>
        <filter-mapping>
            <filter-name>characterEncodingFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    
[/code]


CC BY-SA 3.0
2017-02-27T10:53:56.463
32978
2017-03-01T04:17:51.643
2017-03-01T04:17:51.643
4765
18852
32943
answer