「トラブル対応」カテゴリーアーカイブ

トラブル対応に関する記事です

Eclipse:デフォルトのVM引数を設定する方法

EclipseでJUnitやDjUnitを実行すると「junit java.lang.OutOfMemoryError: Java heap space」とメモリエラーが表示された場合は「デフォルトのVM引数」を設定する事でこの事象を回避する事が出来るのでその設定方法をご紹介します。

環境

  • Eclipse 4.2
  • Windows7 professional 64bit版

対処方法

  1. Eclipseメニューの「ウィンドウ」⇒「設定」を選択します。
  2. 設定画面で「Java」⇒「インストール済みのJRE」⇒使用しているjdkを選択して「編集」ボタンを選択します。
  3. JREの編集画面で「デフォルトのVM引数」へ以下の様に設定します。

ttlファイルを実行すると「無効なホスト」と表示される場合の対処方法

TeraTerm用のマクロファイル「**.ttl」ファイルを実行すると「無効なホスト」と表示された場合の対処方法についてメモしておきます。

事象

    「**.ttl」ファイルをダブルクリックして実行する以下の様に「無効なホスト」と表示される。

原因

    ttlファイルに紐付いている実行ファイルへTeraTerm起動用の「ttermpro.exe」が指定されている。

対応方法

ttlファイル用の実行ファイルを「ttpmacro.exe」へ変更します。

  1. 実行したいttlを右クリックして「プログラムから開く」⇒「既定のプラグラムを選択」を選択します。
  2. 「参照」ボタンを選択してTeraTermのインストールフォルダ内にある「ttpmacro.exe」を選択します。
  3. 後は「OK」ボタンを選択すれば「ttpmacro.exe」でttlファイルが実行されるようになります。

TeraTermが日本語表示されない場合の対処方法

TeraTermが日本語表示されない場合の対処方法についてメモしておきます。

事象

    TeraTermを起動すると以下の様にメニュー等の表示が英語になっている。

原因

    言語ファイルの設定が日本語に設定されていない。

対応方法

  1. TeraTermのインストールフォルダ内にある「TERATERM.INI」ファイルをエディタで開きます。
  2. 次に「TERATERM.INI」ファイル内で「UILanguageFile=」と記載されている箇所を探します。
    日本語表示されていない場合は以下の様に「UILanguageFile=」の後に何も記載されていません。
  3. 「UILanguageFile=」の箇所を「UILanguageFile=lang\Japanese.lng」に変更してINIファイルを保存します。
  4. 後はTeraTermを起動すれば日本語化されます。

ブラウザ表示でのF5とctrl+F5の違い

Web系の開発していると画面表示確認する際に、「cssやjsは変更したのに画面を表示してみると反映されていない」という事を経験した方は少なくないと思います。
こういう場合はまず、F5もしくはctrl+F5を押下して画面を再表示(リロード)確認すると思いますが、そもそも「F5単独」押下と「ctrl+F5同時」押下では何が違うんだろう?という事についてメモしておきます。

F5単独押下時のリロード

  • ブラウザでキャッシュされている場合、キャッシュを利用して画面を再表示します。

Ctrl+F5同時押下時のリロード

  • ブラウザのキャッシュを利用せずにサーバーにある最新の情報を読み込んで画面を再表示します。
  • スーパーリロードとも呼びます
  • ブラウザによって、Ctrl + F5以外でもスーパーリロードは可能です。

ブラウザ別のスーパーリロード方法

<Google Chrome、Microsoft Edge>

  • Ctrl + F5
  • Shift + F5
  • Ctrl + Shift + R
  • Ctrl + 更新ボタン
  • Shift + 更新ボタン

<FireFox>

  • Ctrl + F5
  • Ctrl + Shift + R
  • Shift + 更新ボタン

<Opera>

  • F5
  • Ctrl + R
  • 更新ボタン

<Safari>

  • Shift + 更新ボタン

ブラウザの更新ボタンとは

上記で説明している「更新ボタン」ですが、以下の様にブラウザのアドレスバー付近に表示されている以下のような赤枠内のボタンのことを「更新ボタン」と記載しております。

CSVファイルの項目をダブルクォーテーションで囲む方法

CSVファイルを扱っていると項目値をダブルクォーテーションで囲まれていないケースもあり、これを項目毎にダブルクォーテーションで囲ませたい時があります。こういう場合に手っ取り早くダブルクォーテーションを付与する方法をご紹介します。基本的にはEXCELとサクラエディタなどのエディタを併用する事で実現出来ます。

使用するソフト

  • Microsoft Excel ※特にバージョンは問いません
  • サクラエディタ ※秀丸など他のエディタでも可

CSVファイルへのダブルクォーテーションの付与手順

  1. Excelで対象のCSVファイルを開きます。ここでは「sample.csv」を開いています。
    「sample.csv」の内容は以下の通りです。
  2. Excelでcsvファイルを開いたらデータの最終行の次行へ以下の数式を入力します。今回は1行空けて見やすくA5セルへ入力しています。
    ⇒「=””””&A1&””””」
  3. A5セルへダブルクォーテーション付で値が表示されましたので次にA5セルの式をA5:C7セルまでコピペします。
    ※項目数、行数によってペーストする範囲は変更して下さい。
  4. ここまで項目単位にはダブルクォーテーションが付与された状態になったのでこの内容をサクラエディタへ貼り付けます。
    ただこのままではカンマ区切りではなくタブ区切りの状態なので今度はこれをカンマ区切りへ変更します。
  5. 「Ctrl + R」で置換ダイアログを表示し、「置換前」の文字へ「\t」、「置換後」の文字へ「,」(カンマ)を入力し、正規表現へチェック後に「全て置換」を選択します。
  6. これでダブルクォーテーション付与のカンマ区切りのCSV形式の内容になったのでこの内容を元のファイルと差し替えれば完了です。

djUnitでaddReturnValueが効かない原因について

ちょっとdjUnitで「addReturnValue」を使用しても全く効いてない?という事象に少しハマっていたので原因についてメモしておきます。

addReturnValueが効かない原因

addReturnValueが効かない原因として上げられるのが概ね以下の3つになるかと思います。1と2については少し見なおせばすぐ発見出来そうですが、今回ハマった原因が3でした。。。

  1. クラス名の指定が間違っている
  2. メソッド名の指定が間違っている
  3. 指定したメソッドが複数回実行されている

「指定したメソッドが複数回実行されている」とは

では「指定したメソッドが複数回実行されている」というのはどういう事かというとについて説明します。
根本的な話として以下の2つのコードは全く同じ意味という事を理解しておく必要があります。

これだけで気づく方はハッと思うかもしれませんが、ここで重要なのはaddReturnValueでは「1回目に実行」されたメソッドのみしかaddReturnValueで指定した値が返ってこないという事です。つまり「setReturnValueAt」で1回目を指定した場合と同様の動きしかしてくれないのです。
今回私がハマったのは指定したメソッドが想定した箇所よりも手前で事前に実行されていた為、想定したいたメソッドは2回目の実行になっていたために2回目の方にはaddReturnValueが効いていなかったという事象でした。

addReturnValueが効かない時の調査方法

addReturnValueをしてクラス名やメソッド名は正しいのにどうも効いていないように見える時は一度「getCallCount」でメソッドの実行回数を調査して見ると良いかもしれません。

Excel:印刷すると1ページ目にしか印刷設定内容が適用されない場合の対処方法

Excelで複数ページを印刷する場合に「2 in 1」などに集約して印刷設定した後に印刷してみると1頁目だけ「2 in 1」形式で印刷され、2頁目以降は「2 in 1」形式ではなく元のまま1ページ分そのまま印刷されてしまうという事を経験した事はないでしょうか。これは印刷設定画面でプレビュー表示されている頁のみに変更した印刷設定が適用されている為に発生する事象です。解決するには大きく2通りの方法があります。

対処方法.一

    一つ目の対処方法としては印刷画面で「1頁単位で表示⇒印刷設定」を印刷する頁数分繰り返して指定する方法です。
    ただこの方法では印刷頁数が2,3枚程度ならいいですが数十、数百頁ある場合は手間が掛かり過ぎるのでお勧め出来ません。

対処方法.二

    二つ目の対処方法(というか根本的な対処方法)としてはExcelファイルを開く前にWindowsメニューの「デバイスとプリンター」画面で対象のプリンタのプロパティから直接印刷設定変更した後でExcelファイルを開いて印刷する方法です。
    基本的にExcelでは起動した際にデフォルトでプリンターの印刷設定通りに印刷されますので、Excelを起動する前にプリンターの印刷設定をしておけば全ての印刷対象頁にその設定が反映されます。

Excelで「#REF!」エラーの原因

Excelで計算をしていると「#REF!」と表示されてしまうケースを見かける事があるかと思います。この事象の発生原因と対処方法をメモしておきます。

発生原因

  • 指定された関数名が正しくない。

対処方法

  • セル削除後に正しいセル参照を入力します。

Excelで「#N/A」エラーの原因

ExcelでVLOOKUP関数を使用すると「#N/A」と表示されてしまうケースを見かける事があるかと思います。この事象の発生原因と対処方法をメモしておきます。
◆設定例(C4セル):「=VLOOKUP($B4,$F$4:$G$20,2,0)」

発生原因

  • 【検索値】となるセルに値が入力されていない。
  • 【検索値】となるセルの値が、【検索範囲】に指定した一覧表に存在しない。

対処方法

  • ISERROR関数を使用し、VLOOKUPの結果ERRORとなる場合には””が表示されるように条件を指定します。
    ◆設定例(C4セル):「=IF(ISERROR(VLOOKUP($B4,$F$4:$G$20,2,0)),””,VLOOKUP($B4,$F$4:$G$20,2,0))」

Excelで「#NAME?」エラーの原因

Excelで計算をしていると「#NAME?」と表示されてしまうケースを見かける事があるかと思います。この事象の発生原因と対処方法をメモしておきます。

発生原因

  • 指定された関数名が正しくない。

対処方法

  • 手入力などで指定した関数名を見直して正しい関数名を指定します。