类中的方法getAttribute()和getParameter()方法有什么区别HttpServletRequest?
我正在使用Java 6,并尝试HttpsURLConnection使用客户端证书创建针对远程服务器.
服务器使用自签名根证书,并要求提供受密码保护的客户端证书.我已将服务器根证书和客户端证书添加到我在/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/lib/security/cacerts(OSX 10.5)中找到的默认java密钥库中.密钥库文件的名称似乎表明客户端证书不应该进入那里?
无论如何,将根证书添加到这个商店解决了臭名昭着的问题 javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed' problem.
但是,我现在仍然坚持如何使用客户端证书.我尝试了两种方法,并没有让我到任何地方.
首先,首选,尝试:
SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
URL url = new URL("https://somehost.dk:3049");
HttpsURLConnection conn = (HttpsURLConnection)url.openConnection();
conn.setSSLSocketFactory(sslsocketfactory);
InputStream inputstream = conn.getInputStream();
// The last line fails, and gives:
// javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
Run Code Online (Sandbox Code Playgroud)
我试过跳过HttpsURLConnection类(不理想,因为我想与服务器谈论HTTP),而是这样做:
SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket("somehost.dk", 3049);
InputStream inputstream = sslsocket.getInputStream();
// do anything with the inputstream results in:
// java.net.SocketTimeoutException: Read timed out
Run Code Online (Sandbox Code Playgroud)
我甚至不确定客户端证书是否存在问题.
我与VPN连接以设置库存API以获取产品列表,它工作正常.一旦我从Web服务获得结果并且我绑定到UI.此外,当我拨打电话付款时,我还将PayPal与我的应用程序集成,以便快速结账.我遇到了这个错误.我使用servlet进行后端处理.任何人都可以说如何解决这个问题?
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target
Run Code Online (Sandbox Code Playgroud) 迭代Java中所有DOM元素的最有效方法是什么?
这样的东西,但对于当前的每个DOM元素org.w3c.dom.Document?
for(Node childNode = node.getFirstChild(); childNode!=null;){
Node nextChild = childNode.getNextSibling();
// Do something with childNode, including move or delete...
childNode = nextChild;
}
Run Code Online (Sandbox Code Playgroud) 我试图穿过我和Mockito之间的砖墙.为了获得Mockito东西的正确导入静态语句,我已经把头发撕掉了.你认为有人会抛出一张桌子,说anyInt()来自org.mockito.Matchers,而when()来自org.mockito.Mockito等,但这对新手来说太有帮助了,不是吗?
这种事情,特别是当与无数更多以星号结尾的import语句混合在一起时,并不总是非常有用:
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
Run Code Online (Sandbox Code Playgroud)
是的,我知道并且一直在尝试使用Eclipse Window - > Preferences-> Java - > Editor-> Content Assist - > Favorites机制.它有所帮助,但它并没有击中头部.
任何对这个问题的答案都将不胜感激.
非常感谢,Russ
假设我在集群中有5个节点,我必须在运行时删除2个节点.那么如何在不影响指数的情况下完成?
我有接近10 Gbphour的连续数据流,这些数据将被连续索引.
重新平衡会对此有所帮助吗?提前致谢
考虑以下控制器方法:
@RequestMapping(value = "/test", method = RequestMethod.GET)
public void test(@RequestParam(value = "fq", required = false) String[] filterQuery) {
logger.debug(fq = " + StringUtils.join(filterQuery, "|"));
}
Run Code Online (Sandbox Code Playgroud)
以下是不同fq组合的输出:
/test?fq=foo 结果是 fq = foo /test?fq=foo&fq=bar 结果是 fq = foo|bar /test?fq=foo,bar 结果是 fq = foo|bar /test?fq=foo,bar&fq=bash 结果是 fq = foo,bar|bash /test?fq=foo,bar&fq= 结果是 fq = foo,bar|例3是问题.我希望(想要/需要)它输出fq = foo,bar.
我已经尝试用逗号来逃避逗号\并使用其他%3C工作.
如果我看一下HttpServletRequest对象的版本:
String[] fqs = request.getParameterValues("fq");
logger.debug(fqs = " + StringUtils.join(fqs, "|"));
Run Code Online (Sandbox Code Playgroud)
它打印预期的输出:fqs = foo,bar …
当我在tomcat中重新部署我的应用程序时,我遇到以下问题:
The web application [] created a ThreadLocal with key of type
[java.lang.ThreadLocal] (value [java.lang.ThreadLocal@10d16b])
and a value of type [com.sun.xml.bind.v2.runtime.property.SingleElementLeafProperty]
(value [com.sun.xml.bind.v2.runtime.property.SingleElementLeafProperty@1a183d2]) but
failed to remove it when the web application was stopped.
This is very likely to create a memory leak.
Run Code Online (Sandbox Code Playgroud)
另外,我在我的应用程序中使用ehcache.这似乎也导致以下异常.
SEVERE: The web application [] created a ThreadLocal with key of type [null]
(value [com.sun.xml.bind.v2.ClassFactory$1@24cdc7]) and a value of type [java
.util.WeakHashMap...
Run Code Online (Sandbox Code Playgroud)
ehcache似乎创建了一个弱哈希映射,我得到的消息是,这很可能会造成内存泄漏.
我在网上搜索并发现了这个, http://jira.pentaho.com/browse/PRD-3616但是我没有这样的服务器访问权限.
如果这些警告有任何功能影响或是否可以忽略,请告诉我?我在tomcat管理器中使用了"查找内存泄漏"选项,它说"没有发现内存泄漏"
以下方法仅写出我添加的最新项目,它不会附加到以前的条目.我究竟做错了什么?
public void addNew() {
try {
PrintWriter pw = new PrintWriter(new File("persons.txt"));
int id = Integer.parseInt(jTextField.getText());
String name = jTextField1.getText();
String surname = jTextField2.getText();
Person p = new Person(id,name,surname);
pw.append(p.toString());
pw.append("sdf");
pw.close();
} catch (FileNotFoundException e) {...}
}
Run Code Online (Sandbox Code Playgroud) 作为研究用于项目的CQRS的一部分,我遇到了Axon框架,我想知道是否有人有任何真实的生活经验.为了清楚起见,我问的是框架,而不是CQRS作为一种架构模式.
我的项目已经使用了Spring和Spring Integration,非常适合Axon自己的要求,但在我花了很多时间之前,我想知道是否有人有一些亲身经验.特别是我对我可能存在的陷阱感兴趣,这些陷阱在文档中并不是很明显.
java ×9
servlets ×2
axon ×1
cqrs ×1
data-binding ×1
dom ×1
ehcache ×1
iteration ×1
jsp ×1
jsse ×1
memory-leaks ×1
mockito ×1
paypal ×1
printwriter ×1
spring ×1
spring-mvc ×1
ssl ×1
vpn ×1
xml ×1