投稿

Eclipseで『Java heap space』と出て処理が止まるときの対処法

Eclipseで『Java heap space』と出て、SVN(Subversion)などの処理が止まるときにはEclipseのJavaVMに割り当てられているヒープメモリが不足しています。 この場合はJavaVMのヒープメモリの最大値を変更する必要があります。 起動コマンドで指定する方法 起動コマンドにJavaVMへの引数オプションを追加します。 -vmargs -Xmx1024M ショートカットなどだと C:\eclipse.exe -vmargs -Xmx1024M eclipse.iniに記述する方法 eclipse.iniに次のものを追記します。 -vmargs -Xmx1024M 引数の説明 -vmargs これ以降に書かれるものはJavaVMへの引数として渡されます。 このため最大値の指定などは、この指定以降に書きます。 -Xmx1024M ヒープメモリ領域の最大値 この場合、1024MB = 1GB 最大値なので、この値全てが常に確保されるわけではありません。 ヒープメモリ領域の最小値は -Xms40M のようにして渡します。

debug.keystoreの作成と保存

コマンドプロンプトにて以下を入力 keytool -genkey -v ^ -keystore debug.keystore ^ -alias androiddebugkey ^ -keyalg RSA ^ -validity 100000 ^ -dname "CN=Android Debug,O=Android,C=US"  パスワードは "android  作成された"debug.keystore"を"C:\Users\hiroshi\.android"に保存

ビルド・パスのエラーが解決されるまで、プロジェクトをビルドできません

WEBで、参考ページをみつけたのでリンク&内容転載 http://d.hatena.ne.jp/none53/20100826/1282837838 エラー1 説明  ビルド ・パスのエラーが解決されるまで、プロジェクトを ビルド できません エラー2 説明 プロジェクト 'Demo' に、必要なソース・ フォルダー がありません: ' gen ' エラー1は、 ①プロジェクトの プロパティ > Java の ビルド パス>順序および エクスポート のタブ ②AndroidX.XのところにチェックをいれてOKをクリック ③ ビルド を行うと通るようになります。 一度 ビルド が通れば、チェックをはずしても通るようになります。

VBAでIEを操作する

Sub ie_test() 'IEテストする。 'IEの起動 Dim objIE As Object '変数を定義します。 Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。 objIE.Visible = True '可視、Trueで見えるようにします。 '処理したいページを表示します。 objIE.Navigate "http://www.google.co.jp/" 'ページの表示完了を待ちます。 While objIE.ReadyState <> 4 Or objIE.Busy = True '.ReadyState <> 4の間まわる。 DoEvents '重いので嫌いな人居るけど。 Wend 'google検索項目(name=q)にセットする。 objIE.Document.getElementsByName("q")(0).Value = "三流" End Sub ' Private Sub OpenWebPage22(ByVal url As String) Dim objIE Dim objShell As Object Dim n As Integer Dim low As String Dim col As String Dim i As Long ' low = ActiveCell.Row ' col = ActiveCell.Range ' Set objShell = CreateObject("Shell.Application") '後ろから消してく。.Windowsでエクスプローラーとインターネットエクスプ...

ActionFormのresetメソッド

ActionFormはstruts設定ファイルの中で設定したスコープに登録されます。したがって session に登録された場合には、同一セッション中の同じHTMLフォームにおいては同じActionFormインスタンスが使用される事になります。またHTMLフォームの内、チェックボックスは選択されていない状態でパラメータが送信されません。したがって以下のような不具合が発生してしまいます。 (※ scope=request であれば問題ない) あるHTMLフォームのチェックボックスを選択し、HTTPリクエストをサーバへ送る。 チェックボックスに該当するActionFormのプロパティ(boolean型)にtrueが設定される。 再び1と同じHTMLフォームにおいて、今度はチェックボックスの選択を外して、HTTPリクエストをサーバへ送る。 ActionFormはセッションに登録されているため、2と同じインスタンスが使用される。またチェックボックスに該当するパラメータは送信されないため、該当するプロパティのsetterメソッドは呼ばれず、2で設定した値(true)がそのまま残る。 チェックボックスを使用する場合には上記のような不具合が生じるため、ActionFormにはプロパティを初期化するためのメソッド「reset」が用意されています。resetメソッドはHTTPリクエストからパラメータ値を読み取って設定する前に必ず呼ばれるものです。ActionFormで何らかの初期化をそのタイミングで行いたい場合には、resetメソッドをオーバーライドします。以下はその例です。メソッドの引数ActionMappingとHttpServletRequestは、Actionクラスのexecuteメソッドの引数と同じものです。 public class ProductForm extends ActionForm{   private boolean discount;   ...   public void reset(ActionMapping mapping, HttpServletRequest request){     discount=false;  ...

INDEX データが1件の時だけ、JavaScriptの必須チェックが誤動作する

原因 JavaScript上でフォーム部品は、同名の要素が複数あるときのみ配列として扱われます。従って、今回のバグのようにチェックボックスが1個の時は、配列の長さを表すlengthプロパティが未定義(undefined)となり、for文の中に制御が移りません。 for (var i=0; i<sentakuChk.length; i++) { ←ここでsentakuChk.lengthが取得できない 結果、表示データが1件のみの時は選択状態にかかわらず、エラーメッセージが表示されてしまいます。 対策 動的に数が変わる同名のフォーム部品をJavaScriptで扱うときは、数が1個の時と複数の時で分けて処理を書きます。 プログラム修正例 チェックボックスが1個か複数かは、JavaScriptでのチェックボックスを表すプロパティが配列になっているかどうか(=lengthプロパティがあるかどうか)で判断できます。 チェックボックス1個の場合に対応したソース function check() {   var sentakuChk = document.form1.sentakuChk;   // チェックボックスが複数の時   if (sentakuChk.length) {     for (var i=0; i<sentakuChk.length; i++) {       if (sentakuChk[i].checked) {         return true;       }     }   // チェックボックスが1個の時   } else if (sentakuChk.checked) {     return true;   }   alert("1件も選択されていません。");   return false;...

タグ のfileterについて

<bean:write>タグは、プロパティの出力時にHTMLエンコード処理を実行して、HTML特殊文字をエスケープさせます。 filter=trueの場合は、エスケープされた状態で出力されます。省略時はtrueです。 Strutsを使ってサニタイジングをした文字列を画面に表示したい場合、 bean:writeタグのfilter属性をfalseにする。 エスケープ文字一覧 HTML 特殊文字 エスケープ後 < &lt; > &gt; " &amp; & &quot; \ &#39;