首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用WebLogic 11g实现代理

用WebLogic 11g实现代理
EN

Stack Overflow用户
提问于 2014-11-17 23:13:01
回答 3查看 10K关注 0票数 2

我使用WebLogic服务器10.x (11g)部署和服务我的应用程序。但是,我们的生产环境由一个代理服务器组成,如果我试图访问某些站点,就会造成麻烦。

因此,我想知道是否有任何可行的解决方案可以通过配置代理服务器的详细信息来解决

  1. WebLogic环境
  2. 应用程序级别-我正在使用Java开发我的应用程序

提前谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-11-17 23:20:59

有两种可能的方法来实现这一点。

  1. 配置WebLogic环境。
  2. 程序化

让我们看看这些。

应用服务器中的代理配置--让我们以WebLogic应用服务器为例来说明所需的配置

配置WebLogic服务器以启用代理

  1. 使用WebLogic管理控制台
  2. 登录到管理控制台
  3. 转到域->环境->服务器->管理服务器->配置->服务器启动
  4. “内部参数”部分输入以下内容并保存。-jvmargs -Dhttp.proxySet=true -Dhttp.proxyHost=server_url -Dhttp.proxyPort=port
  5. 重新启动WebLogic服务器
  6. 使用WebLogic启动脚本
  7. 打开WebLogic域配置脚本
  8. 搜索以下短语"JAVA_OPTIONS“
  9. 然后输入以下详细信息。set JAVA_OPTIONS=%JAVA_OPTIONS% -Dhttp.proxyHost=server_url -Dhttp.proxyPort=port
  10. 保存脚本并启动WebLogic服务器

编程使用

有几个实现可用,让我们讨论几种方法,我认为这将是有用的。

使用值的代理配置

如下所示,您可以在应用程序中使用编程定义的值配置代理。

代码语言:javascript
复制
System.setProperty("http.proxyHost", "proxy_url");
System.setProperty("http.proxyPort", "port");

具有用户凭据的配置

有时,您可能需要提供精确的凭据才能通过代理服务器。这里有一个实现,它将帮助您实现这一点。

代码语言:javascript
复制
import java.net.Authenticator;
import java.net.PasswordAuthentication;


public class MyAuthenticator extends Authenticator {
    private String username;
    private String password;

    public MyAuthenticator(String username, String password){
        this.username = username;
        this.password = password;
    }

    public PasswordAuthentication getPasswordAuthentication () {
        return new PasswordAuthentication (username, password.toCharArray());
    }
}

定义的身份验证类可以用于向代理配置注入凭据,如下所示。

代码语言:javascript
复制
System.setProperty("http.proxyHost", "proxy_url");
System.setProperty("http.proxyPort", "port");
Authenticator.setDefault (new MyAuthenticator("domain_name\\user_name","password"));

在这两种情况下,您都需要在程序级别实现这些使用,如下所示。否则,代理通信将不成功,并最终抛出异常。

代码语言:javascript
复制
final URL url = new URL(null, urlString, new sun.net.www.protocol.http.Handler());
票数 6
EN

Stack Overflow用户

发布于 2015-07-30 16:10:03

要配置WebLogic代理文件,需要修改位于域bin文件夹中的setDomainEnv.cmd (Windows)。

例如,集成服务器就在这里。

代码语言:javascript
复制
C: \ Users \ [YOUT USER NAME] \ AppData \ Roaming \ JDeveloper \ system11.1.1.4.37.59.23 \ DefaultDomain \ bin

必须将下列属性与代理的详细信息一起放入文件中

代码语言:javascript
复制
@REM Estableciendo proxi
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dhttp.proxySet=true -Dhttp.proxyHost=192.168.101.11 -Dhttp.proxyPort=8080 -Dhttp.nonProxyHosts=localhost

请参阅下一个链接

配置WebLogic Proxi

票数 1
EN

Stack Overflow用户

发布于 2021-12-10 10:10:44

在运行Eclipse WebLogic 14.1.1.0.0的开发人员环境中,我遇到了类似的问题。我花了一天的时间寻找一个可行的解决方案来配置代理服务器。

最后,我在EXTRA_JAVA_PROPERTIES中设置了变量startWebLogic.cmd

代码语言:javascript
复制
set EXTRA_JAVA_PROPERTIES=-Dhttp.proxyHost=proxy.example.com -Dhttp.proxyPort=3128 -Dhttps.proxyHost=proxy.example.com -Dhttps.proxyPort=3128 

如果将代理设置应用于JVM,下面是一个要测试的小JSP页面:

代码语言:javascript
复制
<html>
<body>
<p><%=System.getProperty("http.proxyHost") %></p>
<p><%=System.getProperty("http.proxyPort") %></p>
<p><%=System.getProperty("https.proxyHost") %></p>
<p><%=System.getProperty("https.proxyPort") %></p>
</body>
</html>

有一些我尝试过的解决方案,但是没有为我提供:

  • 按照Oracle1的建议在EXTRA_JAVA_PROPERTIES中设置setDomainEnv.cmd
  • 按照Aviro和Manish Kumar Gupta 2的建议在startWebLogic.cmd中设置startWebLogic.cmd
  • 在管理控制台上设置服务器启动参数

1为WebLogic服务器01/doc.111191/e53673/GUID-36A18CFA-55F1-4D19-B371-A6D15EBF2E24.htm配置代理设置

2 Weblogic!https://kumarsoablog.blogspot.com/2016/10/proxy-server-configuration-for-weblogic.html的代理服务器配置

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26983737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档