小编Jos*_*eph的帖子

Grails Connections在Integration测试中的表现非常不同

我们有一个扩展BasicDataSource的自定义数据源.我们已经重写了getConnection方法,该方法在其中执行了一些操作.当我们在测试之外运行webapp时,当我们从控制器调用服务时,它将获取新连接并使用该连接直到服务完成.一切都很好.但是,在集成测试中,连接似乎在测试甚至调用控制器之前被抓取.流程如下

常规运行:调用控制器 - >控制器调用服务方法 - >连接被抓取 - >运行服务方法并返回控制器

集成测试:抓取连接 - >从测试调用控制器 - >控制器调用服务方法 - >运行服务方法并返回控制器

毋庸置疑,这给我们带来了问题,因为正确的连接对我们的应用非常重要.思考?

编辑:仍然遇到重大问题.我们已经达到了这样的程度,我们必须避免创建集成测试,或者进行一些手动连接切换(这会使测试的一半失败)

DataSource.groovy的

dataSource {
pooled = true
dialect="org.hibernate.dialect.OracleDialect"
properties {
    maxActive = 50
    maxIdle = 10
    initialSize = 10
    minEvictableIdleTimeMillis = 1800000
    timeBetweenEvictionRunsMillis = 1800000
    maxWait = 10000
    testWhileIdle = true
    numTestsPerEvictionRun = 3
    testOnBorrow = true
}

}
hibernate {
cache.use_second_level_cache = true
cache.use_query_cache = true
cache.provider_class = 'net.sf.ehcache.hibernate.EhCacheProvider'
}
Run Code Online (Sandbox Code Playgroud)

connection grails integration-testing datasource

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

JQuery Themeroller css Wrapping Accordion标题

我正在使用Jquery UI 1.8.10中的JQuery Themeroller主题.我想用themeroller改变我的主题.当前的themeroller版本适用于jquery UI 1.9.当我下载一个新主题并实现CSS /图像时,我手风琴菜单上的标题大小增加了一倍.箭头图标在一行上,标题文本被包装到下一行.

有没有办法访问以前版本的jquery UI Themeroller?或者,是否有其他人找到的小修复?我最担心的是,我错过了一个不会被回归测试捕获的css线.

css jquery themeroller

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

快速获得hibernate结果的方法?

我目前在我的项目中设置了hibernate.它适用于大多数事情.但是今天我需要从表中返回几十万行查询.它是表中总行数的约2/3s.问题是查询需要大约7分钟.使用直接JDBC并执行我假设的相同查询,它需要<20秒.因此,我认为我做的事情完全错了.我将在下面列出一些代码.

DetachedCriteria criteria  =DetachedCriteria.forlass(MyObject.class);
criteria.add(Restrictions.eq("booleanFlag", false));
List<MyObject> list = getHibernateTemplate().findByCriteria(criteria);
Run Code Online (Sandbox Code Playgroud)

关于它为什么会变慢和/或我可以做些什么来改变它的想法?

java oracle hibernate

4
推荐指数
2
解决办法
2832
查看次数

templateUrl 函数没有使用显式注解,不能在严格模式下调用

我正在尝试创建一个自定义角度组件,该组件基于 templateUrl 函数动态加载模板。我目前得到一个templateUrl未使用显式注释并且无法在严格模式下调用的错误。通常我知道当注入的服务没有得到正确注释时会出现这个错误(https://docs.angularjs.org/error/$injector/strictdi)。但是,我缺少这如何适用于templateUrl.

我正在使用 Angular 1.5。

确切的错误信息是 - angular.js:13550 Error: [$injector:strictdi] templateUrl is not using explicit annotation and cannot be invoked in strict mode

组件代码片段:

angular.module('hive.triGrid')
.controller('TriGridCellController', ['$element', '$attrs', function     ($element, $attrs) {
    var $ctrl = this;
}]) 
.component('triGridCell', {
controller: 'TriGridCellController',
templateUrl: function($element, $attrs)
{
    var type = $attrs.cellType;
    if(type.toUpperCase() == "ICON")
    {
        return "components/grid/cellTemplates/iconCell.tpl.html";
    }
    else if(type.toUpperCase() == "CUSTOM")
    {
        return $attrs.cellTemplateUrl;
    }
    else
    {
        return "components/grid/cellTemplates/textCell.tpl.html"; 
    }
},
//template:"<ng-include src='$ctrl.getTemplateUrl(z)'/>",
bindings: …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

3
推荐指数
1
解决办法
2152
查看次数

DeleteOnExit jvm shutdown

我目前有一个tomcat webapp,需要在JVM关闭时删除文件.我创建了一个自定义ContextLoaderListener来处理contextDestroyed事件.在这里我在适当的文件上调用deleteOnExit.但是,自从jdk 1.6.0_14以来我无法删除OnExit.谷歌搜索表明有一些预期的变化,但我没有看到解决这个问题.有人有主意吗?

下面的代码不起作用.

for(File f : myFileList)
try{
    f.deleteOnExit()
} finally {
    f.delete()
}
Run Code Online (Sandbox Code Playgroud)

java spring jvm

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

JQGrid搜索规则和工具栏过滤错误

我有一个工具栏过滤器设置,适用于我的JQGrid.我们最近要求只允许整数进入该字段.我更改了相应列的colModel,以便在搜索发生之前验证客户端.在对javascript进行更改后,行为没有改变.无论输入如何,验证似乎都不会发生在客户端,这让我相信我对搜索规则有误解.代码如下

以前

colModel:[ ...,
                      {name:'version', search:true, stype:'text'}
,...,]
Run Code Online (Sandbox Code Playgroud)

变更后

colModel:[ ...,
                      {name:'version', search:true, stype:'text',searchrules:{required:true, integer:true}}
,...,]
Run Code Online (Sandbox Code Playgroud)

搜索规则不适用于工具栏过滤吗?文档表明他们会,除非我在某处错过了一条线.

谢谢你的期待!

filtering jqgrid

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

JQGrid表单编辑标签/列宽

我有一个jqgrid并在此网格上使用表单编辑.我遇到的问题是我标记为可编辑的列不是正确的宽度.我无法在colModel或表单选项中找到API中的相应选项.例如,我有一个文本字段,应该是~35个字符宽,但它只显示为〜15.如果需要代码示例,请告诉我.

jquery jqgrid

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