ASP.NETのWebAPIをサーバーに配置したらエラー
Windows2008R2で稼動しているASP.NETで作成したWebサービスをWindows2012R2に配置したら以下のエラーが発生。
原因は.NET Frameworkのバージョンととweb.config
WEBサービスは.NET Framework3.5

Windows2008R2ではasp.net2.0で動作
※.Net Framework 3.5はasp.net2.0対応
Windows2012R2ではasp.net4.0で動作させていた
.NET Framework3.5の環境で作成されたWebサービスのweb.configの一部のエントリがmachine.configと重複するため削除する必要がある。
POSTでデータが転送できない
POSTでデータが転送されない
スマホ用のサイトを作成しログイン画面を作成。
しかし画面上で入力した値がPOSTでとれない。
今更・・・?
頭がおかしいのか?と思ったが・・・
jQuery Mobileを作成した時はFORM属性にdata-ajax=”false”をつけないといけないとは
jQuery Mobileの役立つサイトメモ
jQuery mobileのスタイルをあてたコントロールが表示されない
スクロールするDIVにjQuery Mobileのスタイルをあてたcheckboxを表示
最初は正しく表示されている

スクロールするとなぜか一番下が表示されない

再度一番上を確認すると表示されない


ちなみにjQuery Mobileのスタイルをあてないcheckboxは問題ない
再描画の問題なのか?DOMのキャッシュの問題なのか?
DIVのスタイルから以下を外すと表示されない問題は解決
[code]
-webkit-overflow-scrolling: touch
[/code]
Leaflet DrawのMarker登録機能をToolbarを使用せずに呼び出す
以下のコードを呼び出し
[code]
new L.Draw.Marker(map, drawControl.options.marker).enable();
[/code]
Leafletにユーザーコントロールを追加
ユーザーコントロール:ourCustomControl を作成してmapに登録。
ちなみにユーザーコントロールのクリックイベントが発生するとMAPにもイベントが伝搬してしまうので、
クリックイベントではe.stopPropagation();を読んでMAPにイベントだ伝搬することを停止。
[code]
var ourCustomControl = L.Control.extend({
options: {
position: ‘topleft’
//control position – allowed: ‘topleft’, ‘topright’, ‘bottomleft’, ‘bottomright’
},
onAdd: function (map) {
var container = L.DomUtil.create(‘div’, ‘leaflet-bar leaflet-control leaflet-control-custom’);
container.style.backgroundColor = ‘white’;
container.style.width = ’30px’;
container.style.height = ’30px’;
container.onclick = function(e){
e.stopPropagation();
console.log(‘buttonClicked’);
//drawControl.options.draw = true;
new L.Draw.Marker(map, drawControl.options.marker).enable();
}
return container;
},
});
map.addControl(new ourCustomControl());
[/code]

Leaflet Draw
LeafLet DrawはLeaflet上でFeatureを登録編集するプラグイン
GITHUBのURL
[code]
https://github.com/Leaflet/Leaflet.draw
[/code]
基本的な使い方
githubよりSRC以下をダウンロードしてリンク
[code]
<script src="../lib/leafret.draw/src/Leaflet.draw.js"></script>
<script src="../lib/leafret.draw/src/Leaflet.Draw.Event.js"></script>
<script src="../lib/leafret.draw/src/Toolbar.js"></script>
<script src="../lib/leafret.draw/src/Tooltip.js"></script>
<script src="../lib/leafret.draw/src/ext/GeometryUtil.js"></script>
<script src="../lib/leafret.draw/src/ext/LatLngUtil.js"></script>
<script src="../lib/leafret.draw/src/ext/LineUtil.Intersect.js"></script>
<script src="../lib/leafret.draw/src/ext/Polygon.Intersect.js"></script>
<script src="../lib/leafret.draw/src/ext/Polyline.Intersect.js"></script>
<script src="../lib/leafret.draw/src/ext/TouchEvents.js"></script>
<script src="../lib/leafret.draw/src/draw/DrawToolbar.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Feature.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.SimpleShape.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Polyline.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Marker.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Circle.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.CircleMarker.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Polygon.js"></script>
<script src="../lib/leafret.draw/src/draw/handler/Draw.Rectangle.js"></script>
<script src="../lib/leafret.draw/src/edit/EditToolbar.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/EditToolbar.Edit.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/EditToolbar.Delete.js"></script>
<script src="../lib/leafret.draw/src/Control.Draw.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.Poly.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.SimpleShape.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.Rectangle.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.Marker.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.CircleMarker.js"></script>
<script src="../lib/leafret.draw/src/edit/handler/Edit.Circle.js"></script>
<link rel="stylesheet" href="../lib/leafret.draw/src/leaflet.draw.css"/>
[/code]
以下のコードでツールバーが表示され、編集等が可能となる
[code]
var drawnItems = new L.FeatureGroup();
map.addLayer(drawnItems);
var drawControl = new L.Control.Draw({
edit: {
featureGroup: drawnItems
}
});
map.addControl(drawControl);
map.on(L.Draw.Event.CREATED, function (event) {
var layer = event.layer;
drawnItems.addLayer(layer);
});
[/code]

登録用ツールバーを消去
[code]
var drawControl = new L.Control.Draw({
draw : false,
edit: {
featureGroup: drawnItems
},
});
[/code]
編集削除ツールバーも消去
[code]
var drawControl = new L.Control.Draw({
draw : false,
edit: {
featureGroup: drawnItems,
edit: false,
remove: false
},
});
[/code]
消去を再表示はできない?
一旦、コントロールそのものを削除して再登録だな。
削除のコード
[code]
map.removeControl(drawControl);
[/code]
iPhoneを回転するとzoomControlが隠れる
Leafletモバイルのサンプルページに従ってページを作成。
Leaflet on Mobile
iPhone SE iOSのバージョンは10.3.2
最初はzoomControlも正しい位置に表示されているが、回転するとzoomControlがアドレスバーに隠れてしまう。


HTMLとCSS
[code]
body {
padding: 0;
margin: 0;
}
html, body, #map {
height: 100vh;
width: 100vw;
}
[/code]
対応は回転のイベントで以下の処理を行う
[code]
$(window).bind("orientationchange",function(){
setTimeout(function(){
$(‘html,body’).animate({scrollTop: 0}, 500, ‘swing’);
map.invalidateSize()
}, 400);
})
[/code]
GeoServerが動かない→Tomcatが動かない
GeoServerが動作しないためTomcatのサービスを確認すると起動していない。
サービスを起動しようとすると以下のエラーが表示される。

イベントログには以下が出力されている「Apache Tomcat 7.0 Tomcat7 サービスは、次のサービス固有エラーで終了しました: ファンクションが間違っています。」
どうやらJavaがバージョンアップされてTomcatが参照しているJREの場所を更新する必要があるようだ。
環境変数:JRE_HOME
[code]
JRE_HOME=C:\Program Files\Java\jre1.8.0_111\bin
[/code]
C:\Program Files\Apache Software Foundation\Tomcat 7.0\bin\Tomcat7w.exeを起動して
jvm.dllのパスを確認
[code]
C:\Program Files\Java\jre1.8.0_111\bin\server\jvm.dll
[/code]
JREのディレクトリ確認

最初にインストールした「jre1.8.0_111」から「jre1.8.0_131」にバージョンアップされている。
Tomcat7w.exeの値と環境変数をいかに修正
C:\Program Files\Java\jre1.8.0_131\bin\server\jvm.dll
C:\Program Files\Java\jre1.8.0_131\bin
今更ながらの小地域
e-Statでダウンロード可能な最小の地域である小地域とは基本的には町丁目または大字字である。
西池袋3丁目の場合は「西池袋」が「町」、「3丁目」が「丁目」である。
大字と字は見つけたら記載の予定





