データベースから場所の緯度と経度を取得し、Googleマップにプロットする必要があるjsfアプリケーションの機能を開発しています。gmaps4jsfライブラリはgoogle maps java script api v3では更新されていないので、google maps java script api をそのまま使用しています。問題は、(jsf 経由で) 緯度と経度を取得した後、スクリプトを呼び出して地図に場所をプロットできないことです。
この問題の解決策は何ですか?
データベースから場所の緯度と経度を取得し、Googleマップにプロットする必要があるjsfアプリケーションの機能を開発しています。gmaps4jsfライブラリはgoogle maps java script api v3では更新されていないので、google maps java script api をそのまま使用しています。問題は、(jsf 経由で) 緯度と経度を取得した後、スクリプトを呼び出して地図に場所をプロットできないことです。
この問題の解決策は何ですか?
JSF に JS 変数であるかのように出力させるだけです。
<h:form>
<h:commandButton value="Submit" action="#{bean.submit}" />
</h:form>
<h:outputScript rendered="#{not empty bean.lat and not empty bean.lon}">
var lat = #{bean.lat};
var lon = #{bean.lon};
initializeMapSomehowWith(lat, lon);
</h:outputScript>
( <h:outputScript>
HTML<script type="text/javascript">
要素を生成します。まだ古い JSF 1.x を使用している場合は、代わりに、テンプレート テキストで EL の代わりに<h:panelGroup><script>
も使用してください)<h:outputText>
のようなもので
public void submit() {
lat = 12.106173;
lon = -68.935304;
}
注意: JSF は基本的に HTML を生成します。JS は HTML レスポンスの一部です。