问题标签 [socketfactory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
455 浏览

web-services - 为 Apache Axis 提供一个 socketfactory 对象,而不是类

在我当前的项目中,我们使用 Apache Axis 通过 SOAP 进行远程调用。

现在有些情况下,由于防火墙限制,服务器主机+端口不能直接访问,但有可能是 SSH 隧道。

Axis 文档提到了插入自己的Socket 工厂的可能性。但是这种插入似乎只能通过在 System 属性中提供实现类的名称来实现。

我刚刚花了一个小时左右的时间来实现一个基于 JSch 会话的 SocketFactory(通过自定义的 SocketImpl 实现)——但是这个 SocketFactory 对象依赖于一个 Session 对象,不能简单地独立实例化。

我想我可以使用静态变量/方法以某种方式解决这个问题,但这肯定看起来不太好。

实际上,我希望能够为每个服务器(或服务器组)提供一个新的 SocketFactory(带有另一个基本 SSH 会话),其中可能同时存在多个 - 因此,有必要将其提供给服务定位器。

有没有办法解决这个问题?

0 投票
2 回答
1956 浏览

java - RMI exportObject 中的客户端套接字工厂?

如果您想为 RMI 使用自定义套接字(例如使用 SSL),在UnicastRemoteObject.exportObject(4)中,您需要指定客户端套接字工厂和服务器套接字工厂。但是对象的导出是在服务器端完成的。为什么需要客户端套接字工厂?

除非......它被序列化并被想要获得与该对象的连接的客户端使用?我发现这不太可能(尽管这可能是答案);(SSL) 对我来说,套接字工厂听起来不像是可序列化对象的经典示例,密钥库是本地的,诸如此类。

0 投票
1 回答
567 浏览

java - 有没有办法将 SocketFactory _instance_ 提供给 InitialLdapContext?

有一种将 SocketFactory 提供给 InitialLdapContext 的静态方式:

但是有没有办法提供实例本身而不是它的类名?我的套接字工厂使用受信任证书的输入流进行参数化,并且可以使用不同的受信任证书配置许多 InitialLdapContext 实例。顺便说一句,这将在 OSGi 环境中运行。

提前致谢。

0 投票
2 回答
10734 浏览

java - 如何在 Apache HttpComponents 中使用自定义 socketfactory

我一直在尝试在 Apache HTTPComponents 项目的 httpclient 库中使用自定义 SocketFactory。到目前为止没有运气。我期待我可以为 HttpClient 实例设置一个套接字工厂,但这显然不是那么容易。

http://hc.apache.org/httpcomponents-client-ga/tutorial/html/connmgmt.html上的 HttpComponents 文档确实提到了套接字工厂,但没有说明如何使用它们。

有人知道这是怎么做到的吗?

0 投票
2 回答
811 浏览

tomcat - 如何使用无效的 ssl 证书通过 Exchange 2007 SMTP 中继从 Tomcat Web 应用程序发送电子邮件?

我要解决的问题是通过 Exchange 2007 SMTP 中继从我的 tomcat Web 应用程序发送电子邮件。

交换服务器没有安装有效的 SSL 证书,所以我试图推送我自己的 ssl 套接字工厂,它也接受无效的证书。

在堆栈溢出的帮助下,我找到了一个可以在简单测试程序中运行的解决方案,但在从正在运行的 Web 应用程序中执行时却不行(类加载问题)。

我目前的解释是 SocketFetcher 类的类加载器无法看到我的 webapp 的类,对吗?

我该如何解决这个限制?

只是为了好玩,我把我的工厂放在一个单独的 jar 中,并将它放在 tomcat lib 文件夹中,但仍然找不到。

我得到这个例外:

我这样推工厂:

我的自定义套接字工厂:

和“信任所有人”经理:

0 投票
1 回答
460 浏览

gzip - 如何使用 spring-rmi 实现压缩

我正在尝试在我们的 Spring-rmi 应用程序中实现自定义套接字工厂以进行压缩。

以下是 rmi-server 配置:

压缩流基于以下实现:

http://jmvidal.cse.sc.edu/csce790/handouts/sockets/CompressionInputStream.java.html

但是我在 rmi 客户端启动时遇到以下错误:

如何使用 spring-rmi app 实现压缩?

0 投票
1 回答
794 浏览

android - Android 中的安全 HTTPS POST

0 投票
1 回答
117 浏览

android - 通过自定义 Socket 实现的 WebControl 请求

这个问题范围很广,涵盖了三大移动操作系统(Android、iOS、Windows Mobile)。

那么对于 WebView (Android)、UIWebView (iOS)、WebBrowser 呢?(Windows Mobile) 控件,我想拦截网络请求并通过我自己的自定义 Socket 实现发送。

在决定应用程序应该如何工作之前,我想检查所有这些操作系统是否提供此功能。

该应用程序旨在成为一个混合应用程序,它显示一些移动特定的导航控件,然后是一个需要显示实际内容的网页。

但是我想通过我的套接字实现来传输这些请求,而不是通过默认地址/端口发送它。

如果这里不可能自定义套接字工厂,那么我在这里还有什么其他选择。我在互联网上环顾了一下,最接近的是在请求中添加标题。

谢谢

0 投票
0 回答
126 浏览

java - 使用代理启动 javaws 后如何安全地重置 RMISocketFactory?

我正在调试一个通过 Java WebStart 8 启动的 Java Swing 应用程序。

我的网络要求我使用 http 代理。这会触发 webstart 将 RMISocketFactory 设置为默认实现。

我的问题是我需要使用我的自定义 RMISocketFactory。

RMISocketFactory 的代码阻止我将其重置为我的自定义代码:

有没有安全的重置方法是?

0 投票
4 回答
1844 浏览

java - 通过代理使用 Javamail

我有一个 Java 应用程序,它使用 Javamail (v.1.5.4) 向 POP/SMTP 邮件服务器发送和查看邮件。这个应用程序必须在我们的公司网络中运行,我们有一个代理(f*ck!)阻止我的请求。我搜索了可能的解决方案,Javamail 说我们可以使用 SOCKS5:

问:如何配置 JavaMail 以通过我的代理服务器工作?[更新!]

答:JavaMail 目前不支持通过 Web 代理服务器访问邮件服务器。使用代理服务器的主要原因之一是允许来自公司网络内的 HTTP 请求通过公司防火墙。防火墙通常会阻止大多数对 Internet 的访问,但会允许来自代理服务器的请求通过。此外,公司网络内的邮件服务器将为电子邮件执行类似的功能,通过 SMTP 接受消息并将其转发到 Internet 上的最终目的地,并接受传入的消息并将其发送到适当的内部邮件服务器。

该解决方案对我无效,因此我必须寻找新的替代方案。有人说他们实现了一个 custom SocketFactory,但我不确定这是否足够。有人试过吗?

另一种可能的解决方案是使用另一个库,但我找不到任何可以避免这个代理的东西。

有人治疗过这个问题吗?你如何解决它?

概括

问题:我必须在 Java 应用程序中发送和阅读电子邮件,但我的代理阻止了请求。

我试过什么?使用javamail,我尝试使用SOCKS5解决方案,但没有效果。

我在寻找什么?一种避免此代理的方法。有人讲述了一个习俗SocketFactory(但我不确定这是否有效)。我找不到 Javamail 的任何替代品。

问候!!