在Hibernate期间Session
,我正在加载一些对象,并且由于延迟加载,其中一些被加载为代理.一切都好,我不想把懒人装完.
但后来我需要通过RPC将一些对象(实际上是一个对象)发送到GWT客户端.碰巧这个具体对象是代理.所以我需要把它变成一个真实的对象.我在Hibernate中找不到类似"实现"的方法.
如何知道他们的类和ID,将一些对象从代理转换为实际?
目前,我看到的唯一解决方案是从Hibernate的缓存中驱逐该对象并重新加载它,但由于许多原因它真的很糟糕.
在eclipse中是否有最近打开的文件列表?
如果是,那么还有任何捷径吗?
我经常在编辑器中关闭类,因为它们打开了太多.但是几分钟后我再次需要它们.也许你以不同的方式解决这个问
谢谢!
您在Java项目中使用了哪些安全框架?
我使用的是Spring Security和Apache Shiro,它们看起来都不成熟.
Spring安全漏洞:
Apache Shiro缺陷:
两者都缺乏文档.
也许大多数真正的项目都会开发自己的安全框架?
我的web.xml在开发和生产环境中有所不同.例如,在开发环境中,不需要安全约束.
通常我部署新的应用程序版本如下:
问题是我必须在导出之前手动取消注释web.xml中的安全性约束.
你怎么解决这个问题?
我还在一些文章中遇到了"web.xml很少改变"的意见.但是如果在每次更新时导出到WAR,web.xml怎么能不改变?
提前致谢!
Hamcrest中是否有匹配器来比较集合的平等性?有contains
,containsInAnyOrder
但我不需要equals
绑定具体的集合类型.例如,我无法将Arrays.asList和Map.values与Hamcrest进行比较equals
.
提前致谢!
考虑我有一个控制器方法get()
,它调用一些使用数据库的服务方法.
使整个控制器方法成为事务性或只是每个服务方法是否正确?
在我看来,我们必须进行get()
交易,因为它执行相关的操作.
通过GWT RPC更新对象可以轻松撤消.我们需要在内存中克隆先前的实体状态并在撤消时应用它.
但是当我们使用RequestFactory时,没有具体的更新操作.RequestFactory将实体修改发送到服务器并更新存储库实体本身.我们无法拦截更新过程.
如何对使用RequestFactory进行的更新实现撤消?
我为我的GWT项目使用GWT Maven插件.问题是,如果任何类被更改,即使它是服务器类GWT Maven插件在运行时重新编译所有GWT代码mvn package
.
这个插件如何确定需要重新编译?我怎么能让它更聪明?
使用Trac时,它总是突出显示类名作为对wiki页面的引用,如下所示:
MyClass?
Run Code Online (Sandbox Code Playgroud)
我怎么能禁用它?它使票证文本不可读.
我将Spring Security和Apache代理用于Web应用程序.使用标准mod_proxy时一切正常,但在切换到AJP代理后,Spring安全重定向出现问题.
Apache配置:
<VirtualHost *:80>
ServerName domain.com
ProxyPass / ajp://localhost:8009/Context/
ProxyPassReverse / ajp://localhost:8009/Context/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
当我打电话给http://domain.com/login时,我会看到一个登录表单.
当我提交表单时,我会访问http://domain.com/auth并获得身份验证.
然后Spring Security应重定向到http://domain.com/index,但它会重定向到http://domain.com/Context/index
我怎样才能摆脱那个上下文路径?为什么Spring Security会在任何地方添加它
在Spring Security网站上有一个类似的问题,但没有人回答:
http://forum.springsource.org/showthread.php?95141-Why-is-spring-security-including-the-context-path
PS谷歌没有发现任何与此问题有关的内容似乎很奇怪.我是唯一使用Spring Security + AJP的人吗?也许这是一个错误的模式?
解:
<VirtualHost *:80>
ServerName domain.com
RewriteEngine on
RewriteRule ^/Context/(.*)$ /$1 [R=301]
ProxyPass / ajp://localhost:8009/Context/
ProxyPassReverse / ajp://localhost:8009/Context/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)