小编TV'*_*ank的帖子

如何强制IntelliJ始终在"整个项目"中搜索

我喜欢使用Find in Path函数CTRL+SHIFT+F,它在几个文件中搜索文本字符串.

我经常遇到的一件事是,我搜索至少在一个文件中存在的东西,我得到零结果或者我只找到一些包含搜索词的文件.

然后我意识到" 查找"对话框中的"范围"设置由于某种原因已设置为"模块"或"目录",而不是"整个项目",这是我几乎总是想要的.

这里让我感到愚蠢的是,这似乎只是偶尔发生 - 通常我会将范围设置为整个项目,就像我想要的那样,但有时它会是其他东西.

IntelliJ如何决定使用哪个范围?

此外,是否有一些设置可用于强制IntelliJ始终选择"整个项目"作为默认值?

search intellij-idea

15
推荐指数
2
解决办法
3209
查看次数

当lambda函数引用封闭循环中的变量时,javascript范围问题

关于stackoverflow的第一个问题:)希望我不会让自己难堪......

我有一个javascript函数,可以加载一个专辑列表,然后为每个专辑创建一个列表项.列表项应该是可点击的,所以我用一个做东西的函数调用jQuery的click().我循环这样做.我的问题是,所有项目似乎都获得相同的点击功能,即使我尝试创建一个在每次迭代中执行不同内容的新项目.另一种可能性是迭代变量以某种方式是全局的,并且函数引用它.代码如下.debug()只是Firebug的console.debug()的封装.

function processAlbumList(data, c) {
 for (var album in data) {
  var newAlbum = $('<li class="albumLoader">' + data[album].title + '</li>').clone();
  var clickAlbum = function() {
   debug("contents: " + album);
  };
  debug("Album: " + album + "/" + data[album].title);
  $('.albumlist').append(newAlbum);
  $(newAlbum).click(clickAlbum);
 }
}
Run Code Online (Sandbox Code Playgroud)

以下是上述函数运行时打印内容的记录,之后是单击不同项目导致的一些调试行.它总是打印"10",这是专辑变量的最后一个值(有10张专辑).

Album: 0/Live on radio.electro-music.com
Album: 1/Doodles
Album: 2/Misc Stuff
Album: 3/Drawer Collection
Album: 4/Misc Electronic Stuff
Album: 5/Odds & Ends
Album: 6/Tumbler
Album: 7/Bakelit 32
Album: 8/Film
Album: 9/Bakelit
Album: 10/Slow Zoom/Atomic Heart
contents: 10
contents: …
Run Code Online (Sandbox Code Playgroud)

javascript scope function

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

如何在maven中运行javascript单元测试,而无需运行浏览器或服务器?

我正在开发包含javascript的web内容,这些内容在某种程度上拥有的逻辑不仅仅是动画和移动值.我想为这种逻辑实现一些单元测试.

我想找到一些方法在javascript中编写这些测试,并在我在maven中构建web项目时运行它们.由于我想测试的代码处理方法或对象中包含的逻辑内容,我觉得我不应该让服务器运行.另外,我读过像Rhino这样的东西,这让我觉得应该没有必要让浏览器启动某个地方只是为了执行javascript.

我不是特别在意浏览器的差异 - 我很少能找到我碰上在这一领域的问题,当我做它总是关于造型或罕见的DOM问题.我想测试一下,我可以添加一个,最后两个.

我已经搜索了一些,我找到了很多用于javascript单元测试的框架.在筛选出我挑剔的要求后,我仍然可以找到一些产品.这些东西往往导致我死网页.我发现http://code.google.com/p/javascript-test-maven-plugin/看起来很不错,但它仍处于测试阶段,我很难让我的maven找到存储库.

有没有人有一些建议或提示?

查看javascript单元测试的一个原因是该语言看起来很完美.在使用Java中的模拟框架之后,我经常发现我最终会得到伪闭包的东西和符号,如果我在javascript中做同样的事情就会消失 - 除了强加结构和与maven的测试集成之外,你几乎不需要测试框架阶段和詹金斯.

javascript unit-testing maven

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

在 Spring 中继承 LocalValidatorFactoryBean 的替代方法

在我们的代码中,我们实现了 org.springframework.validation.beanvalidation.LocalValidatorFactoryBean 的子类,使用我们自己的实现覆盖了 validate(Object target, Errors errors) ,我们在其中运行验证,做一些额外的处理并注册错误消息。

从3.0升级到3.1,好像不再调用这个方法了。同事调试spring代码,发现好像是调用了签名为validate(Object target, Errors errors, Object...validationHints)的方法,直接跳过了旧的validate()。更改为使用带有validationHints 的方法使事情再次起作用。

这个修复感觉有点奇怪,并且容易在未来混淆。是否有另一种方法来处理更面向未来的验证?

validation spring

2
推荐指数
1
解决办法
2292
查看次数

Java 使用 Apache Directory 的 LDAP API 调用 Active Directory

我正在尝试使用 Apache Directory 的 LDAP API 从 Activiti 连接到 Active Directory。我想我已经设法对我的用户进行身份验证,但对用户的后续查询一无所获。

这是我的Java代码:

package com.abc.activiti.ldap;

import org.activiti.engine.ActivitiException;
import org.activiti.engine.identity.User;
import org.activiti.engine.impl.Page;
import org.activiti.engine.impl.UserQueryImpl;
import org.activiti.engine.impl.persistence.entity.UserEntity;
import org.activiti.engine.impl.persistence.entity.UserManager;
import org.apache.directory.ldap.client.api.LdapConnection;
import org.apache.directory.ldap.client.api.exception.LdapException;
import org.apache.directory.ldap.client.api.message.BindResponse;
import org.apache.directory.ldap.client.api.message.SearchResponse;
import org.apache.directory.ldap.client.api.message.SearchResultEntry;
import org.apache.directory.shared.ldap.cursor.Cursor;
import org.apache.directory.shared.ldap.entry.EntryAttribute;
import org.apache.directory.shared.ldap.filter.SearchScope;
import org.apache.directory.shared.ldap.message.ResultCodeEnum;
import org.apache.mina.core.session.IoSession;
import org.slf4j.LoggerFactory;
import org.slf4j.Logger;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class LDAPUserManager extends UserManager {
    private final static Logger logger = LoggerFactory.getLogger(LDAPUserManager.class);

    private LDAPConnectionParams ldapConnectionParams;

    public LDAPUserManager(LDAPConnectionParams ldapConnectionParams) {
        this.ldapConnectionParams = ldapConnectionParams;
    } …
Run Code Online (Sandbox Code Playgroud)

java search ldap active-directory apache-directory

0
推荐指数
1
解决办法
7373
查看次数