Probleme mit dem Herunterfahren von JBoss in Eclipse, wenn ich eine änderung JNDI-Anschluss
1. phase
Ich habe ein problem mit Herunterfahren meine Laufenden JBoss-Instanz unter Eclipse, da ich geändert
den JNDI-Anschluss für JBoss. Natürlich kann ich ihn Herunterfahren von der Konsole aus anzeigen, aber nicht mit
der stop-button, der noch sucht JNDI-Anschluss am Standard-port 1099). Ich bin auf der Suche
nach vorne, um irgendwelche Lösungen. Danke!!!
Umwelt:
- JBoss-4.0.2 (mit Standard)
- Eclipse 3.4.0. (mithilfe von JBoss Tools 2.1.1.GA)
Standard-ports: 1098, 1099
Geändert Anschlüsse: 11098, 11099
Änderte ich den folgenden Teil in jbosspath/server/default/conf/jboss-service.xml:
<!-- ==================================================================== -->
<!-- JNDI -->
<!-- ==================================================================== -->
<mbean code="org.jboss.naming.NamingService"
name="jboss:service=Naming"
xmbean-dd="resource:xmdesc/NamingService-xmbean.xml">
<!-- The call by value mode. true if all lookups are unmarshalled using
the caller's TCL, false if in VM lookups return the value by reference.
-->
<attribute name="CallByValue">false</attribute>
<!-- The listening port for the bootstrap JNP service. Set this to -1
to run the NamingService without the JNP invoker listening port.
-->
<attribute name="Port">11099</attribute>
<!-- The bootstrap JNP server bind address. This also sets the default
RMI service bind address. Empty == all addresses
-->
<attribute name="BindAddress">${jboss.bind.address}</attribute>
<!-- The port of the RMI naming service, 0 == anonymous -->
<attribute name="RmiPort">11098</attribute>
<!-- The RMI service bind address. Empty == all addresses
-->
<attribute name="RmiBindAddress">${jboss.bind.address}</attribute>
<!-- The thread pool service used to control the bootstrap lookups -->
<depends optional-attribute-name="LookupPool"
proxy-type="attribute">jboss.system:service=ThreadPool</depends>
</mbean>
<mbean code="org.jboss.naming.JNDIView"
name="jboss:service=JNDIView"
xmbean-dd="resource:xmdesc/JNDIView-xmbean.xml">
</mbean>
Eclipse setup:
Über meinen JBoss Tools Einstellungen:
Ich hatte eine frühere version, ich habe dieses problem, habe ich gelesen, einige bugfix in JbossTools, also aktualisiert auf 2.1.1.GA. Jetzt die Tasten geändert, und ich habe einen neuen preferences-Ansicht, aber ich kann nicht etwas ändern,...zu sein scheint, abnorme sowie:
Fehler-dialog:
Den stacktrace:
javax.naming.CommunicationException: Could not obtain connection to any of these urls: localhost:1099 [Root exception is javax.naming.CommunicationException: Failed to connect to server localhost:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099 [Root exception is java.net.ConnectException: Connection refused: connect]]]
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1385)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:579)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:572)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at org.jboss.Shutdown.main(Shutdown.java:202)
Caused by: javax.naming.CommunicationException: Failed to connect to server localhost:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099 [Root exception is java.net.ConnectException: Connection refused: connect]]
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:254)
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1370)
... 4 more
Caused by: javax.naming.ServiceUnavailableException: Failed to connect to server localhost:1099 [Root exception is java.net.ConnectException: Connection refused: connect]
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:228)
... 5 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
at java.net.Socket.connect(Socket.java:452)
at java.net.Socket.connect(Socket.java:402)
at java.net.Socket.<init>(Socket.java:309)
at java.net.Socket.<init>(Socket.java:211)
at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:69)
at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:62)
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:224)
... 5 more
Exception in thread "main"
2. phase:
Nachdem Sie einen neuen Server in der Datei/neues/anderes/server, dauerte es erscheinen in der Registerkarte "Einstellungen". Nun die stop-Taste funktioniert (der server erhält die shutdown-Nachrichten ohne zusätzliche Modifikation der jndi-port-es ist keine Chance für die es jetzt), aber es noch gibt eine Fehlermeldung aus, obwohl anders, es ist-ohne Ausnahme-stack-trace: "Server JBoss 4.0 Server nicht stoppen."
- Haben Sie sah durch die JBossTools Einstellungen in Eclipse zu sehen, wenn Sie den port ändern, dass Eclipse erwartet JBoss überwacht werden?
- Skaffman - sollten Sie "post-Antwort" öfter anstatt zu kommentieren, so kann ich Stimmen Sie bis. Ihre Kommentare sind oft besser als viele Antworten.
- Ja, Sie sollten die post diesen Kommentar als eine Antwort! Ich denke, es führt zur Lösung...BTW, ich aktualisierte die Frage mit dem jbosstools prefs. Danke!
- OK, erledigt.... Ich finde mich oft nur ungern auf Sachen wie Antworten, wenn ich nicht sicher bin, ob Sie tatsächlich zu beantworten, nichts.
Du musst angemeldet sein, um einen Kommentar abzugeben.
OK, was Sie tun müssen, ist die Datei->New->Andere->Server, und richten Sie den JBoss-server. Es erscheint dann in den Einstellungen->JBossTools->Server.
Verwickelt.
Ist hier eine detaillierte Lösung für dieses problem:
Die Eclipse WTP-server-Anschluss nicht abgeschaltet JBoss, wenn der jndi-port zugeordnet.
Dies ist, weil die Standard-server-connector-profile verwenden nicht Ihre eigenen alias für die jndiPort. Dieses problem wird auch diskutiert eclipse.org:
http://www.eclipse.org/forums/index.php?t=msg&goto=489439&S=0db4920aab0a501c80a626edff84c17d#msg_489439
Kommt die Lösung aus dem .serverdef Dateien in eclipse:
Deklarieren Sie eine xml-Eigenschaft für den jndi-Anschluss:
Dieser muss einfach nur angewendet werden, wenn die serverdef hat der STOP-Befehl codiert:
Also diese:
wird dies:
Philosophie dies kann überprüft werden, durch Vergleich der definition für die jndi-Verbindung:
Kredit für die inspiration für diesen Allgemeinen Fall zu beheben geht: Moisa Laurentiu Florin. Es war Ihr Beitrag, hat mir zu suchen, die für eine Substitution in der ${jndiPort} anstatt einen hart codierten Wert.
Dieses Update behebt plain-Eclipse WTP-server-connector. Ich bin immer noch die Untersuchung der JBOss-IDE-Anschluss
Öffnen jboss-path\bin\shutdown.jar
Beispiel: jboss-4.2.3.GA\bin\shutdown.jar
öffnen und jboss-Pfad\bin\shutdown.jar\jndi.Eigenschaften
und ändern
java.die Benennung.Anbieter.url=none://localhost:1099 java.die Benennung.Anbieter.url=none://localhost:11099
Im MyEclipse-server-Konfiguration, finden Sie das Feld "Optionale Shutdown-Argument", das ist gefüllt mit dem Standardwert
Ändern
Bearbeitet:
Sorry, diese Antwort ist verbunden mit MyEclipse. Es muss jedoch einen Ort, wo Sie festlegen können, dass die JBoss-Befehl zum Herunterfahren in Ihrer Umgebung als gut.
Vielleicht nehmen Sie einen Blick auf die "Ausführen..." - Konfigurationen?
sollten Sie ändern in der Datei "/home/fmoisa/workspace/eclipse/plugins/org.eclipse.jst.server.generic.jboss_1.5.206.v20090115/servers/jboss42.serverdef" dieser:
org.jboss.Shutdown
${serverRootDirectory}/bin
-S
-Djboss.boot.loader.name= "shutdown".Fledermaus
jboss.shutdown
zu diesem:
org.jboss.Shutdown
${serverRootDirectory}/bin
-S -sjnp://localhost:11099
-Djboss.boot.loader.name= "shutdown".Fledermaus
jboss.shutdown
gl allen 😉
Verwenden Sie den server-adapter zur Verfügung gestellt von JBoss tools und nicht den default von Eclipse WTP.
Kann man dann einfach Doppelklick auf den server und Bearbeiten Sie den JNDI-Anschluss (was btw. automatisch hob Sie aus der XML-Konfiguration, wenn Sie nicht tun, keine Sache). Sie können auch den trick tun über die Einstellung der JNDI-Anschluss über Kommandozeilen-Argumente in der Launch-Konfiguration, aber das ist mehr ärger als nur die Einstellung der port-Werte.
Wurde dies geändert in JBoss 6.0.0M3.
Der stop-Befehl ist jetzt:
Beachten Sie, dass der port auch geändert: Es ist nicht mehr der JNDI-port 1099, aber RMI/JMX-port 1090. So, Sie benötigen ein anderes config-parameter in der server-definition.
Ich weiß nicht, ob die "JNDI-port" - parameter ist erforderlich für JBoss 6.0.0M3-Server.
Ich habe eine modifizierte eclipse-plugin an http://www.cs.hs-rm.de/~knauf/public/ enthält eine server-definition für 6.0.0M3, einschließlich das ändern. Auf dieser Website werden auch links zu einem JBoss-forum-thread mit mehr details über diese änderung.
Beste Grüße
Wolfgang Knauf