JavaEEの開発環境として利用されるNetBeansとglassfishですが、Windows環境で利用する場合に連動できない事象に当たりました。ちょっとハマりましたので対処方法を掲載しておきます。
事象
- NetBeansからglassfishに起動をかけると、"web.xmlエラー"などのメッセージで起動に失敗する。
- サーバーアイコンを展開してglassfishを選択、実行してもNG。
- ファイルを選択して実行してもNG。
- インストール直後の最初のデプロイでは成功する。
- コマンドラインからのglassfish直接起動は成功する。
- ソースデバックはglassfishの再起動が掛かるためできない。
原因
プロジェクトのパスに全角文字が含まれていると、本事象に至るようです。
NG)
- C:\Users\太郎\Documents\NetBeansProjects
- D:\JavaEE\NetBeansProjects
OK)
- C:\Users\Taro\Documents\NetBeansProjects
- c:\NetBeansProjects
- D:\JavaEEProjects
Windowsの場合、名前などの全角文字でアカウントが作られてしまう場合が有ります(私がそうでした)。NetBeansのデフォルトではプロジェクトフォルダをマイドキュメント配下に作成するので、そのままだとプロジェクトフォルダまでのパスに全角文字が混ざることになります。このケースでプロジェクト作成し、デプロイすると本事象に当たってしまうようです。
対処
アカウントが英数の場合は対処不要です。インストール直後とデプロイ後で対処が違います。
[アカウントが半角英数の場合]
対処は不要です。但し、アカウント名とログイン名が違うケースが有るので注意して下さい。私がそうでした
[インストール直後の場合]
新規プロジェクトの際には、全角文字を含めないパスを指定して下さい。以降、新規作成の際には該当パスにはそのパスが使用されます。
以下は設定例です。
[デプロイ後の場合]
一旦、すべてのプロジェクトをアンデプロイする必要が有ります。
1.コマンドラインからstartserv.bat [domain名]コマンドでglassfishを起動します。
2.続いてNetBeansを起動し、サービスタブのサーバーを展開します。
3.アプリケーションを選択し、すべてのアプリケーションをアンデプロイします。
4.glassfishがNetBeansから起動・停止可能となったことを確認します。glassfishをクリックして、起動を掛けて成功すればOKです。
5.NetBeansを終了します。
6.マイドキュメント配下にあるプロジェクトフォルダを、全角文字を含まないパスに移動します。
7.NetBeansを起動し、”プロジェクトを開く”で移動先のフォルダからプロジェクトを指定します。
8.ビルドを実行すると自動でglassfishが起動され、デプロイされればOKです。