小编Mic*_*ael的帖子

XSD:xs:integer和xs:int之间有什么区别?

我已经开始创建XSD和几个例子为发现xs:integerxs:int.

xs:integer和之间有什么区别xs:int?什么时候应该用xs:integer?什么时候应该用xs:int

xsd

108
推荐指数
3
解决办法
9万
查看次数

为何在配置JMX时Java打开3个端口?

我在Centos6上使用JDK7运行我的Java程序.我使用以下选项启用JMX:

JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true"
Run Code Online (Sandbox Code Playgroud)

当我检查打开哪些端口时,我发现了2个额外的随机端口:

netstat -plunt | grep java
tcp        0      0 :::9123                     :::*                        LISTEN      13295/java
tcp        0      0 :::59927                    :::*                        LISTEN      13295/java
tcp        0      0 :::59928                    :::*                        LISTEN      13295/java
Run Code Online (Sandbox Code Playgroud)

请注意,每次重启仅配置的端口9123保持不变,另外两个端口会更改值.

netstat -plunt | grep java
tcp        0      0 :::9123                     :::*                        LISTEN      13331/java
tcp        0      0 :::59932                    :::*                        LISTEN      13331/java
tcp        0      0 :::59933                    :::*                        LISTEN      13331/java
Run Code Online (Sandbox Code Playgroud)

什么是2个额外端口以及为什么打开它们?

如何配置2个额外的随机端口?

如何配置::ffff:127.0.0.1将在JMX打开的所有端口之前显示?

为什么在与JConsole连接时不使用一个端口?

添加以澄清答案

不幸的是,附加的随机端口仍然打开为了提醒您,我使用Centos 6.我的Tomcat设置看起来像这样(Tomcat不部署任何应用程序):

CATALINA_OPTS="${CATALINA_OPTS}  -XX:+DisableAttachMechanism -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.local.only=true -Djava.rmi.server.useLocalHostname=true -Djava.rmi.server.useCodebaseOnly=true -Dcom.sun.management.jmxremote.port=9123 -Dcom.sun.management.jmxremote.rmi.port=9123" …
Run Code Online (Sandbox Code Playgroud)

java jmx rmi

49
推荐指数
2
解决办法
4万
查看次数

以(区分大小写)字母顺序对字符串进行排序的简单方法

我需要按字母顺序对字符串列表进行排序:

List<String> list = new ArrayList();
list.add("development");
list.add("Development");
list.add("aa");
list.add("AA");
list.add("Aa");
Run Code Online (Sandbox Code Playgroud)

一种常见的方法是使用比较器:

Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
Run Code Online (Sandbox Code Playgroud)

CaseInsensitiveComparator的问题是"AA"等于"aa".字符串根据相同值的添加顺序出现在结果中,并且不正确:

"aa","AA","Aa","development","Development"
Run Code Online (Sandbox Code Playgroud)

java string alphabetical comparator

41
推荐指数
2
解决办法
12万
查看次数

什么意思是"javax.net.ssl.SSLHandshakeException:服务器证书更改在重新协商期间受到限制"以及如何防止它?

我们使用Oracle jdk 1.7.0_71和Tomcat 7.0.55.不幸的是,我们在服务器之间的SSL连接期间开始出现以下异常:

javax.net.ssl.SSLHandshakeException: server certificate change is restrictedduring renegotiation
Run Code Online (Sandbox Code Playgroud)

这是什么意思?怎么预防呢?

Tomcat重启后异常消失.

完整堆栈:

Caused by: javax.net.ssl.SSLHandshakeException: server certificate change is restrictedduring renegotiation
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) ~[?:1.7.0_71]
        at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1884) ~[?:1.7.0_71]
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:276) ~[?:1.7.0_71]
        at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:266) ~[?:1.7.0_71]
        at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1402) ~[?:1.7.0_71]
        at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:209) ~[?:1.7.0_71]
        at sun.security.ssl.Handshaker.processLoop(Handshaker.java:878) ~[?:1.7.0_71]
        at sun.security.ssl.Handshaker.process_record(Handshaker.java:814) ~[?:1.7.0_71]
        at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1016) ~[?:1.7.0_71]
        at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312) ~[?:1.7.0_71]
        at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:702) ~[?:1.7.0_71]
        at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:122) ~[?:1.7.0_71]
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) ~[?:1.7.0_71]
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) ~[?:1.7.0_71]
        at org.apache.commons.httpclient.methods.EntityEnclosingMethod.writeRequestBody(EntityEnclosingMethod.java:506) ~[commons-httpclient-3.1.jar:?]
        at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:2114) ~[commons-httpclient-3.1.jar:?]
        at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:1096) ~[commons-httpclient-3.1.jar:?]
        at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:398) ~[commons-httpclient-3.1.jar:?]
        at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171) ~[commons-httpclient-3.1.jar:?] …
Run Code Online (Sandbox Code Playgroud)

ssl tomcat java-7

41
推荐指数
2
解决办法
5万
查看次数

如何在Nexus中限制部署的快照工件数量?

我们正在使用Nexus来部署我们的快照工件.我们的构建服务器使用以下命令在每次构建期间部署它们:mvn deploy.作为每个构建的结果,部署了较新版本的工件.已经将大量工件部署到存储库的问题当然我们只需要最后一个工件.有没有办法限制Nexus中部署的快照工件的数量?谢谢你的帮助,迈克尔

java nexus maven

26
推荐指数
2
解决办法
2万
查看次数

LDAP DN是否不区分大小写?

我构建了一些假定LDAP DN不区分大小写的功能.

我已经使用ActiveDirectory,Oracle和OpenLDAP进行了检查,它不区分大小写.

它适用于所有LDAP吗?

ldap active-directory

22
推荐指数
2
解决办法
3万
查看次数

<protected-views>应该用于JSF 2.2 CSRF保护吗?

我很迷惑.我看到JSF 2.0具有隐含的CSRF保护: JSF 2.0如何阻止CSRF

另一方面,根据文章http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/JSF-CSRF-Demo/JSF2.2CsrfDemo.html,我们应该将以下元素添加到faces-config.xml文件中JSF页面列表.

<protected-views>
   <url-pattern>/csrf_protected_page.xhtml</url-pattern>
</protected-views>
Run Code Online (Sandbox Code Playgroud)

应该<protected-views>用于JSF 2.2 CSRF保护吗?

security jsf csrf jsf-2.2 protected-views

11
推荐指数
1
解决办法
5368
查看次数

从commons.lang迁移StringEscapeUtils.escapeSql

我已经开始将commons.lang 2迁移到commons.lang3.

根据 https://commons.apache.org/proper/commons-lang/article3_0.html

StringEscapeUtils.escapeSql

这是一种误导性的方法,只处理最简单的SQL案例.>由于SQL不是Lang的重点,因此维护此方法没有意义.

理解它,但建议使用什么而不是它?

澄清

你能推荐第三方执行类似于StringEscapeUtils.escapeSql的简单escapeSql吗?

java apache-commons-lang

9
推荐指数
1
解决办法
1万
查看次数

如何使用keytool查看证书密钥?

创建证书后,可以配置-keysize命令选项genkeypair.

是否可以使用keytool查看证书密钥?

我没有成功尝试过这些选项:

keytool  -list –rfc

keytool  -list –v
Run Code Online (Sandbox Code Playgroud)

无法在此处找到它:https: //docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html#keytool_option_list

java keytool

9
推荐指数
1
解决办法
4466
查看次数

LDAP和Active Directory身份验证之间有什么区别?

我试图搜索没有成功.(我知道LDAP和Active Directory之间的区别.另请阅读LDAP和Active Directory之间有什么区别?)

根据我的理解,LDAP使用DN(区分名称)和密码进行身份验证(绑定).例如CN=bob, OU=Users,DC=test,DC=com

Active Directory使用短用户名或完整域用户名和密码进行身份验证.例如bobbob@test.com

因此,LDAP不允许在同一树(OU)中具有相同CN的用户,但它允许在不同OU中使用相同的CN.Active Directory不允许在同一域中使用相同的用户名,即使是位于Active Directory的不同树中的用户对象也是如此.Active Directory允许在不同的域中使用相同的用户名.

其他差异?

authentication ldap active-directory

8
推荐指数
2
解决办法
5万
查看次数