小编Ron*_*onK的帖子

当路径重叠时,Internet Explorer会发送错误的cookie

我们有多个Web应用程序副本,它们部署在同一个域的多个路径上.
例:

每个实例维护一组饼干的每一个其定义path"/" + .getWebDirRoot()-即/abc,/xyz,/abc123

执行以下流程时:

最后一步失败,因为IE我们发送了错误的cookie - 它发送的是http://mydomain.com/abc而不是http://mydomain.com/abc123

这在FireFox中不会发生.(我还没有尝试过任何其他浏览器).

这是一个已知的行为IE(我测试IE9IE8)?
有没有办法克服它(以程序化的方式)?

注:只是为了澄清,这并没有切换时发生http://mydomain.com/abchttp://mydomain.com/xyz -行为被严格限制流动哪里currentUrl.startswith(urlAssociatedWithCookie) == true

我使用Fiddler检查了行为- 我清楚地看到abc123发送的HTTP请求与cookie的值属于abc.

我还检查了FireFox上的cookie,它们是预期的 - 每条路径创建一个.

cookies internet-explorer

13
推荐指数
1
解决办法
4208
查看次数

如何基于注释挂钩自定义编译器逻辑

我想定义一些注释,这些注释将允许在编译期间报告额外的警告/错误(类似于IntelliJ中的注释@Nullable@NotNull注释).

我希望能够编写一些编译器钩子,它们也会根据这些属性添加我的编译逻辑.

如果可能的话,我想要一个通用的钩子,但是因为我们正在使用Eclipse - 如果我们有这种能力也会有好处.

我想知道:

  1. 可能吗?(以上任何选项)
  2. 我从哪里开始?
  3. 到目前为止,我对注释的经验不多,所以如果我以错误的方式解决这个问题 - 我想知道这一点,并且如果可能的话,可以找到更好的方向.

谢谢.

java eclipse annotations compilation

8
推荐指数
1
解决办法
1568
查看次数

JADClipse不能与Eclipse 3.6一起使用

Jadclipse工作的Eclipse 3.6

我已经安装Jadclipse 3.3.0在我Eclipse 3.6复制的jar到插件目录,并重申蚀.

现在我在Windows-> Preferences下有了jadclipse菜单,但在尝试解编译任何类时,它根本就不会解编译.我得到通常的eclipse屏幕,说源不可用.错误日志中没有错误.

任何的想法?

java decompiling jad eclipse-3.6 jadclipse

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

将Eclipse中的用户库定义为项目的一部分而不是工作空间

我看到Eclipse我可以定义用户库 - 使类路径设置更容易(也可能出于其他原因).

问题是,这些库只在工作区中可用,如果我希望其他人使用同一个项目 - 我需要导出我的用户库,他们需要导入它.

项目级别有这样的功能吗?我基本上需要一个' classpath group ' - 可以做到吗?

如果没有,导入项目时是否有自动导入用户库到工作区的方法?

我正在使用Eclipse 3.6.

java eclipse classpath

7
推荐指数
1
解决办法
8049
查看次数

创建与Oracle数据库的连接时出现java.lang.ArrayIndexOutOfBoundsException

看来Oracle的java客户端有一个错误 - 如果tnsnames.ora文件在特定位置放错了空格/制表符/换行符,则会出现以下跟踪异常:

java.lang.ArrayIndexOutOfBoundsException: <some number>
        at oracle.net.nl.NVTokens.parseTokens(Unknown Source)
        at oracle.net.nl.NVFactory.createNVPair(Unknown Source)
        at oracle.net.nl.NLParamParser.addNLPListElement(Unknown Source)
        at oracle.net.nl.NLParamParser.initializeNlpa(Unknown Source)
        at oracle.net.nl.NLParamParser.<init>(Unknown Source)
        at oracle.net.resolver.TNSNamesNamingAdapter.loadFile(Unknown Source)
        at oracle.net.resolver.TNSNamesNamingAdapter.checkAndReload(Unknown Source)
        at oracle.net.resolver.TNSNamesNamingAdapter.resolve(Unknown Source)
        at oracle.net.resolver.NameResolver.resolveName(Unknown Source)
        at oracle.net.resolver.AddrResolution.resolveAndExecute(Unknown Source)
        at oracle.net.ns.NSProtocol.establishConnection(Unknown Source)
        at oracle.net.ns.NSProtocol.connect(Unknown Source)
        at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1037)
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:282)
        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:468)
        at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
        at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:839)
        at java.sql.DriverManager.getConnection(DriverManager.java:582)
        at java.sql.DriverManager.getConnection(DriverManager.java:185)
Run Code Online (Sandbox Code Playgroud)

如果您使用C++应用程序并尝试tnsnames.ora使用相同的方式将其连接到数据库- 它可以正常工作.同样如此sqlplus.还tnsping应该分析此文件没有问题,解决任何服务名称.似乎Oracle .trim()对于价值观或其他东西太懒了 - 而且Oracle客户端版本9,10和11也存在同样的问题.

知道为什么这个问题存在以及tnsnames.ora格式的确切问题是什么?(我只是删除所有空格来解决它)

java oracle tnsnames

6
推荐指数
1
解决办法
4684
查看次数

将ThreadSafe对象放在ThreadLocal上有什么好处吗?

我最近看到一段代码使用了一个ThreadLocal对象并保留ConcurrentHashMap在其中.

这有什么逻辑/好处,还是多余的?

java concurrency thread-local

6
推荐指数
1
解决办法
234
查看次数

当类具有与导入的方法同名的方法时,import static不起作用

我有一个Junit4静态导入org.junit.Assert.assertEquals方法的测试用例.

import static org.junit.Assert.assertEquals;
Run Code Online (Sandbox Code Playgroud)

在这个类中,我创建了一个实用程序方法来断言一些复杂的内部类,这些类没有实现equals(并且很难实现它).

private void assertEquals(MyObj o1, MyObj o2)
{
    assertEquals(o1.getSomething(), o2.getSomething());
    assertEquals(o1.getSomethingElse(), o2.getSomethingElse());
    ...
}
Run Code Online (Sandbox Code Playgroud)

我希望代码的行为好像我正在"重载" assertEquals我正在导入的方法,但看起来我的私有非静态方法隐藏了静态导入的方法.我也尝试将我的方法变为publicstatic(所有排列)但没有成功 - 我不得不重命名它.

它出现这种情况的原因是什么?我在文档中找不到任何对此行为的引用.

java static-import

6
推荐指数
1
解决办法
2670
查看次数

Maven项目设计 - 共享一个共同的项目

我是Maven的新手,我正在尝试将一些项目转换为Maven工作,我不确定构建它们的正确方法是什么 - 这就是我所拥有的:

我有一个共同的模块 - 命名Common和两个不同的应用程序,它们与它们都依赖的事实没有任何共同之处Common.让我们把它们AB.

A- > CommonB- > 之间的依赖关系Common既适用于运行时也适用于测试 - 这意味着A测试类需要Common测试类.

我尝试了各种我能想到的组合 - 但是他们没有产生我想要的东西.奇怪的是我的代码编译,但JUnits失败,因为在类Common路径中找不到测试类.

我要补充2个轮廓对Common创建2件文物及添加2只依赖AB这两个文物?(这可能吗?)有没有正确的方法来做我想要的?我应该重构我的代码以适应Maven吗?

java maven

6
推荐指数
1
解决办法
2261
查看次数

强制 Apache HttpClient 检测 DNS 更改

我正在使用 Apache HTTP 客户端 (4.4.x),我希望它检测到我正在使用的 DNS 背后的 IP 已更改。

我做了这个测试代码:

CloseableHttpClient httpClient = HttpClients.custom()
                .setConnectionTimeToLive(5, TimeUnit.SECONDS)
                .build();

        for (int i = 0; i < 1_000; i++) {
            InetAddress address = InetAddress.getByName("devnull-as-a-service.com");
            System.out.println(i + ": HOST header <" + "devnull-as-a-service.com" + "> resolved IP <" + address.getHostAddress() + ">");
            CloseableHttpResponse response = httpClient.execute(new HttpGet("https://devnull-as-a-service.com/dev/null"));
            System.out.println(response.getStatusLine().getStatusCode() + ": " + response.getEntity());

            Thread.sleep(1_000L);
        }
Run Code Online (Sandbox Code Playgroud)

在测试期间 - 我更改/etc/hosts并模拟 DNS 更改。
我得到的输出是这样的:

21: HOST header <devnull-as-a-service.com> resolved IP <45.76.95.197>
200: [Content-Type: text/html; charset=UTF-8,Content-Length: …
Run Code Online (Sandbox Code Playgroud)

java dns apache-httpclient-4.x

6
推荐指数
0
解决办法
2106
查看次数

SoapUI API:WsdlProject无法加载"复合"项目

我们使用SoapUI的API在构建期间运行自动测试.我试图改变我们的项目是一个composite项目(这意味着它不是一个单一的XML文件,而是一个DirectorySub-Directory每个测试用例).从那以后,我在尝试加载项目时收到此错误:

Error at line 1, column 1
   org.apache.xmlbeans.XmlException: error: Unexpected element: CDATA
   at org.apache.xmlbeans.impl.store.Locale$SaxLoader.load(Locale.java:3486)
   at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1276)
   at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1263)
   at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
   at com.eviware.soapui.config.SoapuiProjectDocumentConfig$Factory.parse(Unknown Source)
   at com.eviware.soapui.impl.wsdl.WsdlProject.loadProject(WsdlProject.java:297)
   at com.eviware.soapui.impl.wsdl.WsdlProject.<init>(WsdlProject.java:212)
   at com.eviware.soapui.impl.wsdl.WsdlProject.<init>(WsdlProject.java:179)
   at com.eviware.soapui.impl.wsdl.WsdlProject.<init>(WsdlProject.java:174)
   at com.eviware.soapui.impl.wsdl.WsdlProject.<init>(WsdlProject.java:159)
Run Code Online (Sandbox Code Playgroud)

这是我用来引发此异常的代码(摘录):

SoapUI.setSoapUICore(new StandaloneSoapUICore(true));
WsdlProject project = new WsdlProject(pathToProjectRoot);
Run Code Online (Sandbox Code Playgroud)

有没有人经历过它并知道如何解决它?我没有在Eviware的论坛中找到任何关于此的迹象.

java testing automation web-services soapui

5
推荐指数
1
解决办法
5243
查看次数