Connecting VisualVM windows to Wildfly 16 - wildfly

How can i connect VisualVM to Wildfly 10?
I have put jboss-client jar in following folder and started visual vm:
Then i started visual vm
When i added jmx connection i get following:
Can anyone suggest what is wrong here? I have not put any authentication (not sure what authentication will it have as console have admin/pass but no password set anywhere else).
Can anyone suggest what is wrong here?
(I have multiple server groups and not sure where to add "remoting-connector use-management-endpoint="true" in domain.xml. I have added in 1 server group only.)

You need to extend VisualVM classpath (using "--cp:ad") with JBoss client jar, eg:
jvisualvm --cp:a $WF_HOME/bin/client/jboss-cli-client.jar
Then connect to your wildfly on admin port (usually 9990)
service:jmx:http-remoting-jmx://localhost:9990
See interesting article here:
https://nozaki.me/roller/kyle/entry/articles-wildfly-visualvm

Related

How do I set up "Remote Debugging"of Wildfly 20 from Eclipse 2020-06

Where can I find current instructions for how to set up Remote Debugging of Wildfly 20 from Eclipse 2020-06? My searches have found posts going back to 2014 they don't work. My most recent attempt is to follow https://tools.jboss.org/documentation/howto/configure_remote_server.html. This has no date on it and it is for connection to EAP 6.1 instead of Wildfly 20 but at least it is from tools.jboss.org and the instructions matched Eclipse 2020-06.
The problem is that when I right click on on the new Server just created with these instructions and select Debug I get the following error:
failed to copy to /opt/wildfly-20.0.1.Final/standalone/deployments/MyApp.war/META-INF/MANIFEST.MF on host 192.168.1.19
The requested path is not found on the remote system.
Here are what I think are important facts:
The path /opt/wildfly-20.0.1.Final/standalone/deployments DOES exist on the Wildfly 20 server # 192.168.1.19.
The Wildfly 20 server is started with /opt/wildfly-20.0.1.Final/standalone/deployments/MyApp.war in place. The Management console shows that MyApp is Deployed and I can access the app from a remote machine so Wildfly and the server are running.
I can connect from Eclipse to the Wildfly server using the Remote Systems item that creating the new Server created. In particular, I can use the root item to "roam around" the file system on the Wildfly server so that suggest to me that Eclipse can establish a connection to the Wildfly server.
The instructions in the URL above did not include this but in the Server's Properties the Web and Management ports were both 0. I manually set them to 8080 and 9990 respectively.
Thank you in advance.
Since your installation is on /opt I guess it was done with root privileges. I'm not sure your user has sufficient rights to be able to access those paths.
As far as I can tell /opt is the recommended installation location but I finally got the server to at least deploy so that problem is solved. See updated question at Attempt to debug a remote Wildfly 20 server failing.

Aws backend code debugging

I deployed my backend code(used framework is drop-wizard) in the form of jar file on AWS(Amazon Web service) server. I want to know is it possible to debug that jar file(jar file deployed on the AWS server) using eclipse on my local pc?? If yes than please display the way of how to do it??
Looking for a good response
Thanks
First, you need to start your application with remote debugging
enabled. With dropwizard, you are typically starting the application
on a server with:
java -jar myapp-0.0.1-SNAPSHOT.jar
Change this to:
java -Xdebug -agentlib:jdwp=transport=dt_socket,address=9999,server=y,suspend=n -jar myapp-0.0.1-SNAPSHOT.jar
This sets up Java to listen for remote debugging sessions on port
9999. Make sure you choose a port that's not blocked by firewalls or
your AWS security configuration.
Next, you have to configure Eclipse to connect to the remote
application for debugging. In Eclipse, right click on the project and
select Debug, Debug Configuration. Create a new configuration of
Remote Java Application. Set the host to your AWS server and the port
to 9999, as above.
Now you should be able to set a breakpoint in your code and start a
debug session on the remote server.

JBoss AS 7.1.1 Remote Application Monitoring

atm I'm facing some problems when I'm trying to connect to my JBoss AS 7.1.1 (on a Linux-Server) via JMX remotely and monitor my Java-Apps from a Win-7 client. I can only see the standard JVM settings but no app-specific ones.
I learned that I have to include the jars in the Classpath while starting jvisualvm on my Windows 7 client.
that looks like this:
"C:\Program Files (x86)\Java\jdk1.7.0_07\bin\jvisualvm.exe" -cp:a C:\Users\myuser\jboss-as-7.1.1.Final\modules
But still it is not working...when I try to connect via:
service:jmx:remoting-jmx://:9999
Is there any special configuration I have to change in my JBoss server besides enabling jmx-management in standalone.xml?
Thanks in advance!

Eclipse and GlassFish: remote deployment and debugging

I am currently using Eclipse to develop a fairly straight-forward Java EE dynamic web application. I have just been using Eclipse to deploy the web app to a GlassFish 3.1 server locally running on my dev machine for development and debugging purposes.
So far, so good. But now, I am looking into deploying the app to a remote GF server for further testing.
In Eclipse, I open the "Servers" tab and select the "New->Server" context menu. I enter the IP address of the remote server running GlassFish, but the "New Server" dialog won't let me proceed. Instead, it gives me the error message:
Remote Server is not secured: It
cannot be used remotely...
Some initial research suggests that remote deployment/debugging is currently not supported by Eclipse. Is that what Eclipse is trying to tell me with this weird error message? Surely "Remote deployment/debugging not supported" would be more apt. Am I overlooking something fundamental here?
Read http://blogs.oracle.com/quinn/entry/securing_adminstration_in_glassfish_server1
Access to remote servers can only be done if the server has been secured...
You want to make sure you have enabled secure administration. Generally you should do the following:
using ./asadmin change-admin-password command to set a password on the 'admin' user. By default there is none (so when it asks for your current admin password just hit Enter assuming you've never set one)
using ./asadmin start-domain to startup the default 'domain1'
using ./asadmin --host localhost --port 4848 enable-secure-admin will enable remote administration access (which you want) and tell Glassfish to start on the localhost at the default admin port 4848
finally use ./asadmin restart-domain to restart and apply those changes.
You should be able to now access the remote server and manage it via your Eclipse install. This works for Eclipse Luna and Glassfish4 open-source edition. Also note that you need to have a glassfish install on your Local development machine and point to that when it asks for the path to the Glassfish installation when setting up the server in Eclipse Wizard...despite the fact that you are connecting to a remote Glassfish instance. (See my SO post for more details/screenshots).
I am adding this because the current accepted answer only points to a link which is typically frowned upon here on SO since links have a tendency to go dead unexpectedly.

Starting JBoss from Eclipse

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