version2.2.0を自宅のサーバーに導入しようとしてつまづいています。tomcatのテストページにはアクセスできます。gsession2/を入れてアクセスしようとするとbrowserが「正常にアクセスできませんでした」と返します。catalinaのエラーログです。致命的: StandardServer.await: create[8005]: java.net.BindException: Address already in use at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:336) at java.net.ServerSocket.bind(ServerSocket.java:336) at java.net.ServerSocket.<init>(ServerSocket.java:202) at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) at org.apache.catalina.startup.Catalina.await(Catalina.java:642) at org.apache.catalina.startup.Catalina.start(Catalina.java:602) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2008/12/11 21:41:37 org.apache.coyote.http11.Http11Protocol pause情報: Coyote HTTP/1.1を http-8080 で一時停止します8005のポートが既に使われている、ということでしょうか?環境です。Fedora9 カーネル2.6.27.5-41.fc9.x86_64java jdk1.6.0_11apache-tomcat 6.0.18hardwareDell T105 AMD Opteron 1216 86_64Browser Firefox 3.04
http://www.mail-archive.com/freebsd-stable@freebsd.org/msg87586.htmlJDKがIPv6対応してないからとか。/etc/rc.conf にtomcat60_java_opts="-Djava.net.preferIPv4Stack=true"追記ではどうでしょうか?
{TOMCAT_HOME}/bin/catalina.shのJAVA_OPTSのif elseに -Djava.net.preferIPv4Stack= "true" \ 追加
> {TOMCAT_HOME}/bin/catalina.shの> JAVA_OPTSのif elseに> -Djava.net.preferIPv4Stack= "true" \ > 追加snipさん、たびたびのコメント有難うございます。家にて設定してみたいと思います。
> {TOMCAT_HOME}/bin/catalina.shの> JAVA_OPTSのif elseに> -Djava.net.preferIPv4Stack= "true" \ > 追加下記の通り追加してみました。 if [ "$1" = "-security" ] ; then echo "Using Security Manager" shift "$_RUNJAVA" $JAVA_OPTS "$LOGGING_CONFIG" $CATALINA_OPTS \ -Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" \ -Djava.security.manager \ -Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \ -Dcatalina.base="$CATALINA_BASE" \ -Dcatalina.home="$CATALINA_HOME" \ -Djava.io.tmpdir="$CATALINA_TMPDIR" \ -Djava.net.preferIPv4Stack= "true" \ <---- ここ org.apache.catalina.startup.Bootstrap "$@" start \ >> "$CATALINA_BASE"/logs/catalina.out 2>&1 & if [ ! -z "$CATALINA_PID" ]; then echo $! > $CATALINA_PID fi elseこの変更で一発でgsession2の設定画面に入れました。重ね重ね有難うございました。
一旦は稼働開始したのですがその後繋がったり、つなげなかったり不安定です。calalinaのログを見ると前回と同じようなエラーのようです。致命的: StandardServer.await: create[8005]: java.net.BindException: Address already in use at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) at java.net.ServerSocket.bind(ServerSocket.java:319) at java.net.ServerSocket.<init>(ServerSocket.java:185) at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) at org.apache.catalina.startup.Catalina.await(Catalina.java:642) at org.apache.catalina.startup.Catalina.start(Catalina.java:602) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2008/12/14 10:38:36 org.apache.coyote.http11.Http11Protocol pauseネットでの調査再開です。
http://d.hatena.ne.jp/adsaria/20070922IPv6を完全に無効化してはどうかと思うけど、これはFedora9だけの問題でもないから根本的な解決方法にならないと思う。JDKが怪しいような気が・・・・・・・。ダウンデートしてJDK1.6.0_07くらいから初めてみるのは?http://java.sun.com/products/archive/
初歩的なミスのような気がしてます。実は別スレッドでも書いたのですがVMWare server2.0を使用しています。このハイパーバイザーはJDKとapache-tomcatを使用して動きます。VMware用/Gsession用のJDKとapache-tomcatはそれぞれ別のフォールダに格納されています。今はGsessionのJDKとapache-tomcatは/usr/local/tomcat以下に配置していますが、この配置をVMware Server2.0で配置されているパスにしてやればいいのではないかと思いますが、いかがでしょうか?
httpdが起動できないのは、既にhttpdが起動されているのでエラーになっているんですね。すでに動作しているVMwareのTOMCATを利用すれば上手くいきそうですね。java -versionで、バージョンが1.6.0_11だったら、そのままでもいいような・・・・・・。※VMware Serverってハイパーバイザー? ホストOSが必要だと思ってましたが。 ウィキペディアの解説だと、広義の意味でVMware Serverもハイパーバイザーなんだorz
> httpdが起動できないのは、既にhttpdが起動されているのでエラーになっているんですね。> すでに動作しているVMwareのTOMCATを利用すれば上手くいきそうですね。予想どおりうまくいきました。以下は変更内容です。tomcatへのパスの変更 /usr/local/tomcat ===>> /usr/lib/vmware/webAccess/tomcat/apache-tomcat-6.0.16javaへのパスの変更 /usr/local/tomcat/jdk1.6.0_11 ===>> /usr/lib/vmware/webAccess/java/jre1.5.0_15 #jdkでなくともいいのですね・・・・もともとのapache-tomcatとjdk1.6.0_11は削除しました。> ※VMware Serverってハイパーバイザー? ホストOSが必要だと思ってましたが。> ウィキペディアの解説だと、広義の意味でVMware Serverもハイパーバイザーなんだorz「仮想化OS」という意味でハイパーバイザーという言葉を使いました。VMware ESXiサーバーはlinuxなどのホストOSの代わりに32MBほどの仮想化専用のOSを使うのだそうです。釈迦に説法か!もう一台マシンがあればESXiサーバーで色々遊んでみたいのですが。度々のアドバイス有難うございました。当方単なるユーザーで開発者とかでは全然ないので幼稚な質問ばかりだったかと思います。
お疲れ様です。VMWare Serverの環境はあまり明るくないのですが、はっきりとした原因がわからないのが今の現状のように思います。ただ、わかっていることは、8005のポートが誰かに先に使われているのではないかということだと思います。ですので、GroupSessionが稼働するTomcatのServer.xmlのport="8005"を、port="9005"など違うポートに変えることで回避するのはいかがでしょうか?
>ただ、わかっていることは、8005のポートが誰かに先に使われているのではないかということだと思います。> ですので、GroupSessionが稼働するTomcatのServer.xmlのport="8005"を、port="9005"など違うポートに変えることで回避するのはいかがでしょうか? ご指摘の方法はごもっともです。私がやったことはさほど稼働率が高くないGroupsession2とVMwareでの仮想マシンでそれぞれ別々のapache-tomcatやjdkを配置するよりは、一本化するほうが良いのではと判断してやりました。
doraemonさんへのコメントは全く的外れなコメントだった気がします。またぞろcatalinaのログにエラーが吐き出されていて、vmware server2.0やgsession2の起動が失敗しています。ログです。致命的: StandardServer.await: create[8005]: java.net.BindException: Address already in use at java.net.PlainSocketImpl.socketBind(Native Method) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359) at java.net.ServerSocket.bind(ServerSocket.java:319) at java.net.ServerSocket.<init>(ServerSocket.java:185) at org.apache.catalina.core.StandardServer.await(StandardServer.java:373) at org.apache.catalina.startup.Catalina.await(Catalina.java:642) at org.apache.catalina.startup.Catalina.start(Catalina.java:602) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)2008/12/15 22:40:18 org.apache.coyote.http11.Http11Protocol pause情報: Coyote HTTP/1.1を http-8308 で一時停止します2008/12/15 22:40:18 org.apache.catalina.connector.Connector pause致命的: プロトコルハンドラの一時停止に失敗しましたjava.lang.NullPointerException at org.apache.jk.server.JkMain.pause(JkMain.java:679) at org.apache.jk.server.JkCoyoteHandler.pause(JkCoyoteHandler.java:153) at org.apache.catalina.connector.Connector.pause(Connector.java:1073) at org.apache.catalina.core.StandardService.stop(StandardService.java:563) at org.apache.catalina.core.StandardServer.stop(StandardServer.java:744) at org.apache.catalina.startup.Catalina.stop(Catalina.java:628) at org.apache.catalina.startup.Catalina$CatalinaShutdownHook.run(Catalina.java:671)JDKやらtomcatを使うアプリケーションが同じポートをアクセスするようなことを避けねばならぬというのがdoraemonさんのご指摘だったのですね。でそれを修正していないのでgsessionやvmware serverで起動トラブルが出ているのでしょう。ご指摘の通りgsessionのポートを変更してみたいと思います。
portの競合を回避するのに以下のようなスクリプトが有効なようです。(Ubuntuの例)#!/bin/sh## Change VMWare Server’s Tomcat port.## see: http://communities.vmware.com/thread/172606#VM_TOMCAT=”/usr/lib/vmware/webAccess/tomcat/apache-tomcat-XXXXX″sudo cp $VM_TOMCAT/conf/server.xml $VM_TOMCAT/conf/server.xml.origsudo perl -pi -e ’s/port=”8005″/port=”8105″/’ $VM_TOMCAT/conf/server.xmlsudo perl -pi -e ’s/port=”8009″/port=”8109″/’ $VM_TOMCAT/conf/server.xml# restart webAccesssudo kill -TERM `pidof webAccess`
vertical_align_top