Tag: proxy

Spring RestTemplate和Proxy Auth

我正在尝试用Spring进行REST调用。 据我所知,正确的方法是使用RestTemplate (?)。 问题是,我是一个代理人。 这是我现在的代码: SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory(); InetSocketAddress address = new InetSocketAddress(host, 3128); Proxy proxy = new Proxy(Proxy.Type.HTTP, address); factory.setProxy(proxy); RestTemplate restTemplate = new RestTemplate(); restTemplate.setRequestFactory(factory); 似乎工作,但我需要在代理validation,但这是如何完成的? Proxy类型以及SimpleClientHttpRequestFactory类型似乎不处理凭据。 没有凭据,我只得到407 ……

Spring ApplicationContext.getBean(Class c)不适用于代理类

我需要通过他们的类类型查找bean。 当bean被代理包装时(某些方法是@Transactional) – ApplicatoinContext无法找到它们。 我发现,如果我通过接口查找它们,它可以工作,但在这种情况下,我正在使用具体的类类型。 我知道bean是我正在寻找的类型,但getBean()方法失败。 我可以调试(并修复)Spring的AbstractBeanFactory代码中的问题。 问题是它根据我要请求的类型检查beanInstance的类型,但beanInstance.getClass()是一个代理。 AbstractBeanFactory应该对此进行补偿,并将类型与代理的目标类进行比较。 我有一个修复此问题,但我不特别想使用修补版本的Spring,我怀疑必须有一些我可以配置来使这个工作,或者这真的是一个错误?

SSL通信中的Apache CXFexception:SocketTimeOut

所以这是交易。 我有一个Web服务WSDL,我需要在公司网络之外进行SOAP调用。 Web服务是HTTPS SOAP,需要客户端证书。 我用wsdl2java用Java生成了客户端代码,事情看起来很顺利。 我现在不能做的是通过CXF从Web服务收到回复。 SSL握手似乎只是花花公子甚至达到了CXF尝试进行HTTP POST的程度,但是超时等待响应(如下所示): Allow unsafe renegotiation: false Allow legacy hello messages: true Is initial handshake: false Is secure renegotiation: false *** HelloRequest (empty) main, SEND TLSv1 ALERT: warning, description = no_renegotiation Padded plaintext before ENCRYPTION: len = 24 0000: 01 64 01 FD 5B 38 03 A6 70 41 57 […]

HTTPS URL的基本代理身份validation返回HTTP / 1.0 407需要代理身份validation

我想在Java中使用具有基本身份validation(用户名,密码)的代理进行连接(并且只有此连接)。 以下代码适用于HTTP URL(例如“ http://www.google.com ”): URL url = new URL(“http://www.google.com”); HttpURLConnection httpURLConnection = null; InetSocketAddress proxyLocation = new InetSocketAddress(proxyHost, proxyPort); Proxy proxy = new Proxy(Proxy.Type.HTTP, proxyLocation); httpURLConnection = (HttpURLConnection) url.openConnection(proxy); // Works for HTTP only! Doesn’t work for HTTPS! String encoded = new sun.misc.BASE64Encoder().encodeBuffer((proxyUserName + “:” + proxyPassword).getBytes()).replace(“\r\n”, “”); httpURLConnection.setRequestProperty(“Proxy-Authorization”, “Basic ” + encoded); InputStream […]

twilio java连接与代理身份validation

我正在使用这里的api示例中的示例Twilio java-sdk建立java Twilio连接。 唯一的区别是我需要通过带有身份validation的Web代理来运行我的Twilio连接。 关于通过网络代理连接到Twilio还有其他问题,但没有接受的答案。 例如,基于该答案我尝试实现这样的解决方案: import com.twilio.sdk.TwilioRestClient; import com.twilio.sdk.TwilioRestException; import com.twilio.sdk.resource.factory.MessageFactory; import com.twilio.sdk.resource.instance.Message; import org.apache.http.HttpHost; import org.apache.http.NameValuePair; import org.apache.http.auth.AuthScope; import org.apache.http.auth.UsernamePasswordCredentials; import org.apache.http.client.CredentialsProvider; import org.apache.http.client.HttpClient; import org.apache.http.impl.client.BasicCredentialsProvider; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.conn.DefaultProxyRoutePlanner; import org.apache.http.message.BasicNameValuePair; import java.util.ArrayList; import java.util.List; public class Example { // Find your Account Sid and Token at twilio.com/console public static final String […]

OSX上JVM的Zombie http.proxyHost设置

我最近更改了网络并从OSX(Leopard)上的系统首选项/网络面板中删除了所有HTTP代理设置。 但是,现在每当我使用Eclipse时,Java HTTP代理系统属性似乎都是“自动”设置为使用我现在已经不存在的HTTP代理。 我在系统的任何地方都找不到直接引用此代理,删除并重新安装Eclipse,监视网络流量以排除任何代理自动配置,但此代理配置仍然存在于Mac OSX JVM上。 这是我在Eclipse配置细节中看到的: http.proxyHost=zombie http.proxyPort=8080 https.proxyHost=zombie https.proxyPort=8080 我可以通过在Eclipse首选项中手动配置没有主机名或端口的代理来解决这个问题,但这似乎并不坚持,僵尸系统代理最终会从死机中升起。 我个人认为这是某种Apple JVM错误 – 但是有人能告诉我如何在不重新安装操作系统的情况下杀死这些僵尸HTTP代理设置吗?

如何通过代理通过ant下载文件

我使用的是使用build.xml文件的ant。 这是命令: java版本:1.8.0 ant版本:1.7.1 CLASSPATH=/app/hbase-0.94.27/lib/hadoop-core-1.0.4.jar CFLAGS=-m64 CXXFLAGS=-m64 ant compile-native tar 它挂在这里: Buildfile: build.xml ivy-download: [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.2.0/ivy-2.2.0.jar [get] To: /app/hadoop-lzo/ivy/ivy-2.2.0.jar 我得到连接超时错误: BUILD FAILED java.net.ConnectException: Connection timed out at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) Ant还调用从maven存储库获取一些文件,build.xml文件的一部分是这样的: 我已将这些行放入build.xml文件中: 仍然与maven连接,通过http挂起获取一些jar文件。 我这样做了吗? 谢谢。

如何在Java中使用自动代理配置脚本

我的Internet Explorer设置为具有用于Web访问的自动代理文件(所谓的PAC)。 有没有办法在我的Java程序中使用它呢? 我的Java代码似乎根本不使用代理。 ArrayList ar = new ArrayList(ProxySelector.getDefault().select(new URI(“http://service.myurlforproxy.com”))); for(Proxy p : ar){ System.out.println(p.toString()); //output is just DIRECT TT it should be PROXY. } 我还在Java控制面板(Control-> Java)上设置了我的代理脚本,但结果相同。 我发现没有办法以编程方式为Java设置PAC文件。 人们使用http.proxyHost作为System.setProperties(..),但这仅用于设置代理主机,而不是代理脚本(PAC文件)。

如何配置HTTPClient以对SOCKS代理进行身份validation?

我需要针对SOCKS代理设置代理身份validation。 我发现这篇文章给出的说明似乎与常见的HTTP代理一起使用。 httpclient.getHostConfiguration().setProxy(“proxyserver.example.com”, 8080); HttpState state = new HttpState(); state.setProxyCredentials(new AuthScope(“proxyserver.example.com”, 8080), new UsernamePasswordCredentials(“username”, “password”)); httpclient.setState(state); 这也适用于SOCKS代理,还是我必须做一些不同的事情?

org.hibernate.LazyInitializationException:无法初始化代理 – 没有会话?

我试图从数据库中的对象进行简单加载,但我得到错误“无法初始化代理 – 没有会话”,任何想法? 谢谢 org.hibernate.LazyInitializationException: could not initialize proxy – no Session org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.jav a:167) org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:215) org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190) com.myapp.domain.User_$$_javassist_0.getLogin(User_$$_javassist_0.java) com.myapp.validator.UserFormValidator.validate(UserFormValidator.java:34) @Component public class UserFormValidator implements Validator { @Autowired private UserDAO userDAO; @Override public boolean supports(Class clazz) { return UserForm.class.equals(clazz); } public UserDAO getUserDAO() { return userDAO; } public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } @Override […]