How can I restart an application in Eclipse through a socket call?
I built an error diagnosis app which can checks what code should be changed to handle the error, but after the change I have to restart the app again. I already have developed a plugin for Eclipse which would take care of this, but I am not sure on how to restart the app.
1.) Is there an internal Eclipse command to restart the app?
2.) Do I have to use a command shell (which I wouldn't prefer)?
Hope someone can help me or give me some guidance. Also I know that there is a possibility to restart an app for debugging, but I want to run the app without debugging.
If you mean you have an Eclipse 3.x style RCP application and you want to restart the RCP from an Eclipse plug-in then you just do:
PlatformUI.getWorkbench().restart(true);
which restarts the RCP using the current workspace.
For an e4 RCP you do:
#Inject
IWorkbench workbench;
workbench.restart();
#greg-449: Thanks for your respond, but what I am trying to achieve is a bit more complex. Consider the following, I have a service that runs on another machine in my company network. It turned out something wrong is going with this service. So you can connect with with a remote debugger to the server and can check with the source code, that you have on your local machine, what is going on. I would say the classic Remote Debugging in Java.
But when you have fixed the error in the code you also have to restart the service on this other machine somewhere in the network. The question is how to do this? By a shell command which gives you the instances on this machine where the service is running or is there some other possibility?
Hope this helps more to understand the problem.
i am only start learning GWT by following their tutorial on https://developers.google.com/web-toolkit/doc/2.1/tutorial/create
On that page, when i reach the heading Running the development mode code server (from Eclipse), i copied the generated url http://127.0.0.1:8888/StockWatcher.html?gwt.codesvr=127.0.0.1:9997 to my browser.
It eventually times out, says page not loading...the plugin page did not show up initially, so i manually installed the plugin...but it still times out...
On the screen, it says...
===============================================================================
The connection was reset
The site could be temporarily unavailable or too busy. Try again in a few moments.
If you are unable to load any pages, check your computer's network connection.
If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the Web
==============================================================================
Am i missing any configurations etc?
Thanks very much in advance
It still looks like your browser is missing the GWT developer plugin. Try a different browser (preferably Chrome). You can also check the instalation of GWT in Eclipse. Look into Windows/Preferences and under Google/WebToolkit you should see checked GWT SDK. Also you can check if a jetty server runs on port 8888, when you type "netstat -na" on the command line.
I have deployed my GWT application to its target environment (i.e. compiled and copied the war directory contents to the target device's /var/www) and some parts of it are not working. I understand that I can debug my local instance of the GWT app as if it were running in the target environment, by opening the deployed GWT App URL and adding gwt.codesvr URL parameter to it, like this:
http://deployment_host/gwtapp.html?gwt.codesvr=localhost:9997
I get
Plugin failed to connect to Development Mode server at localhost:9997
Follow the underlying troubleshooting instructions
My Chrome browser is running on the same machine as Eclipse, so localhost above should be ok. Just to make sure, I've added -bindAddress 0.0.0.0 in the Run/Debug configuration in Eclipse and tried with my external IP/hostname, with no change, except that the error message is updated accordingly. What am I doing wrong?
If I replace deployment_host with localhost above everything works fine, but it's of no use to me to debug locally. (There is some Proxy and ReverseProxy-ing going on in the local Apache, so I do not need the 8888 port when running locally, but this should be unrelated)
Questions Debugging GWT applications outside of dev mode? and Debug GWT application in a remote browser are related but do not help.
If you are using chrome, look in the address bar at the right for a grey GWT icon. In any other browser, you would see a popup message confirming that you want to debug, but in Chrome this apparently isn't possible.
Click the icon, and it will ask you to whitelist this site as allowed to run Java locally on your computer. After you whitelist it, it should run correctly.
Along the same lines as the answer above Ive just had some success restarting the extension helped (but restarting browser hadnt)
Just enable and disable it in :
chrome://chrome/extensions/
Good luck! It's the only thing wrong with GWT imho...
I'm having the following problem with Eclipse 3.7 and Tomcat 7.0.8: I've added my Tomcat with a deployment descriptor in my Eclipse. I've enabled "Use Tomcat installation" in the server settings and tried to start it. The Console in Eclipse says "Server started up in 70s", I can access my application, but the servers state remains "Starting/Synchronized". As a result sooner or later the configured timeout is triggered and I'm getting an error.
Why is Eclipse not recognizing that the server was started successfully?
I've also tried to reinstall Eclipse and Tomcat - no positive changes.
Also adding a clean, fresh downloaded Tomcat results in the same "error".
Any suggestions?
Richard
Try changing the HTTP port from the server configuration screen. For example if you previously had 8080, try changing it to 8090. This should automatically update the new port number to server.xml.
I started running into the same problem after I had been modifying the server port directly in server.xml. Changing the ports back to what they had been did not seem to solve the problem. It looked like the server pluging and actual configuration got somehow out of sync.
Staring JBoss server from within Eclipse Ganymede gives me the following problem:
"Server JBoss v4.0 at localhost was unable to start within 120 seconds. If the server requires more time, try increasing the timeout in the server editor."
The console shows JBoss has started in so and so minutes but soon after, there is a pop up if the above message.
I can also start the JBoss externally.
I had a similar problem, but it was with a Tomcat 5.5 server.
The startup time was quite important, so I got this error.
To solve this problem, I did that steps:
In Preferences, Server, I changed the property "Server timeout delay" to "Unlimited".
Edit:
For Eclipse Ganymede, you must do that:
In the server view, double-click on your server JBoss.
In the overview, you have a "Timeouts" panel (by default, it is collapsed).
You can define the timeouts for server start and stop operations.
I had a similar problem. It turned out that Eclipse’s server default port was set to 8080 while my JBoss was working from 8180.
By changing the server’s configuration in Eclipse (double-click on the server and edit server property), it worked.
Increasing the timeout doesn't solve the problem. Eclipse never recognizes that the server has started (not sure if that's a big deal), just irritated me. I had this problem for weeks and finally figured out that (at least for me) the host name and address had to be identical. I had hostname:localhost; address"127.0.0.1" and it would not work. I changed both to 127.0.0.1 and voila!
Like this:
In my Eclipse with Jboss Tools, that ocurred too, I change the "Host name", on General information of JbossServer, from my machine name to 127.0.0.1.
Thanks, this works fine!
I've seen this behavior when I've changed JBoss to run via SSL on port 8443 instead of unencrypted on port 8080. It is my theory that the Eclipse plugin is checking on port 8080 to confirm that JBoss has started, and that this check is hardcoded and does not respect changes you make to the configuration to specify that the server runs on a different port.
Our workaround is to start JBoss from the debug pulldown menu, which apparently disables the timeout.
Try the following:-
Check if the port jboss configured correctly in the general information. It is usually 8080 unless you've changed it.
I use the hostname as 0.0.0.0 so that it can be accessed from other computers on the network.
I had a problem where I was connected to a vpn and it was causing this issue. Shut off any vpn connections.
You have to change ports defined in JBoss configuration panel. I have used -Djboss.service.binding.set=ports-01 to upgrade port numbers - and forgot to change Eclipse/JBoss configuration - and Eclipse failed to notice JBoss is already running.
Yes I had similar problem Jboss could not start from Eclipse Galileo within default 50 secs
so just changed server startup time by double clicking Jboss server icon in Server window near console & error log (NOT at windows->preferences->server). It opens server editor and then increased the start up time to 300
It worked then. !!!
I had the same issue and corrected it by modifying a "server.xml" file in the jboss folders.
I modified '<Connector port="8080"' by '<Connector port="server port defined in Eclipse"'
You may check whether you are running Jboss version 4.0.4 or version 4.2.2. You might get this error when you have installed Jboss 4.2.2 but configured Jboss 4.0.4 in Eclipse.
Are yoy runing on Linux?
If so, check if jBoss has write privileges over /tmp ...
I had the same problem, and I fixed creating a temp directory with RW privileges to User, Group and others, and adding this line to eclipse.ini
-Djava.io.tmpdir=yourTempDirectory
where your temp directory is the absolute addres of the Temp directory that you created.
I've come upon the same problem and found the explanation. For Eclipse, JBoss is expected to support the jboss-web service (tomcat.sar) which implies an HTTP port to be opened at the end of the process. In my case, as this service is disabled, no HTTP port is opened when the server is running...
Solution: simply double click on the jboss server in the Servers panel and copy the JNDI port to the Port field, in Server Properties section. This makes it.
This way, it is no more necessary to change host name to 127.0.0.1, you may let it be what you want (e.g. localhost is the default).
Double click on the jBoss server icon in the server view. A window pops up with “Timeout” collapsed. Click on the arrow and increase the start time.
I am new to EJB - Jboss. I too was getting the same problem
Jboss Is not started in given time, increase Start-up time out]]
It is not solved by your given valuable suggestions.
According to console: My Jboss-5.1.0.GA Server started in 50:21, 49:91 ...so on.
But not responded well with given host name: 10.168.2.11
Server Configuration Server: 10.168.2.11 which I like to execute when using ant.
Solution: All though It is worked well with
host Name: localhost
Server Name:localhost
Even increased port i.e. ports-02: result in http: port 8280
Attempted every practice given here. This is mine. Hope that eclipse community with jboss collaboration give right solution.
I don't know but bit Ground point in this Suggestion: https://stackoverflow.com/a/945444/1164686
Right click on "JBoss 4.2 at localhost" at "servers" window and select open, after that,
just change the port number from 8080 to 8081 and you are good to go.
I could fix it by using Aboucabar Toure's advice: under Eclipse Indigo, I opened JBoss server properties and edited the Server Ports group to match my JBoss ports configuration (unchecking Detect from Local Runtime boxes).
Then everything worked just fine!
If you are using a non default port for, instance 8180. You should configure eclipse to poll server at desired port number. See this picture:
This also happened when you create the jboss with different server version. I was using JBoss AS 7.2.0 final but had no idea to use which server version in eclipse. I tried with WildFly but that leads to this error. With all the good tips in here didn't solve my problem. Thanks to this post i corrected that with correct version. I should have used Jboss Enterprise Application platform 6.1.
Remove all eclipse breakpoint in the debug view, and the jboss will quickly start.
I am also facing same issue, after change the port number it has worked for me.
Port number in server.xml and jboss port number should be same.
goto -> jboss-4.0.3\server\default\deploy\jbossweb-tomcat55.sar\server.xml
Connector port="9090"
goto -> Double click on server and change your port number as what you gave in server.xml