我有远程JBoss 7.1服务器,我想通过使用VisualVM或JConsole连接到此服务器.
我google了一下,发现了几个关于如何使用VisualVM或JCoonsole连接JBoss 7.1的线程/教程,例如:
不幸的是,我没有通过JMX连接到我的JBoss 7.1.
您对如何使用VisualVM连接JBoss 7.1有什么想法吗?
编辑:我将-Dcom.sun.management.jmxremote.port = 1090 -Dcom.sun.management.jmxremote.authenticate = false添加到standalone.conf.bat,但我得到了一个异常:引起:java.lang.IllegalStateException: LogManager未正确安装(必须将"java.util.logging.manager"系统属性设置为"org.jboss.logmanager.LogManager").
所以,我为JAVA_OPTS添加了另一个选项:-Dcom.sun.management.jmxremote.port = 1090 -Dcom.sun.management.jmxremote.authenticate = false -Djava.util.logging.manager = org.jboss.logmanager.LogManager但是我收到的例外是:
Could not load Logmanager "org.jboss.logmanager.LogManager"
java.lang.ClassNotFoundException: org.jboss.logmanager.LogManager
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
Run Code Online (Sandbox Code Playgroud) 假设我们使用Java SE(无库),并且有以下情况。我们有一堂课:
public class DriverInfo {
private final int age;
public DriverInfo(int age) {
this.age = age;
}
// getter here
}
Run Code Online (Sandbox Code Playgroud)
在某些国家/地区,您必须年满18岁才能开车。换句话说-我们需要对年龄参数进行一些验证。就像是:
if (age < 18) {
throw new IllegalArgumentException("Age is not valid!");
}
Run Code Online (Sandbox Code Playgroud)
因此,我的问题是-此验证应该在哪里?我的想法如下:
任何想法将不胜感激。有谁能提出最佳做法,以应对所描述的情况?