我们构建3层企业解决方案,通常由几个webapp和ejbjar模块组成,这些模块都与数据库通信并具有多个外部集成点.
每个模块通常都需要自己的配置,可以改变解决方案的生命周期.部署它变成了一场噩梦,因为现在我们有18个属性文件,必须记住这些文件才能复制并配置为设置数据源,队列,内存要求等.
我希望能有更好的方式,但不乐观.我们考虑/使用的一些选项,每个选项都有它的优点和缺点:
有了所有这些,你仍然需要以容器特定的方式配置数据源和队列等:(
我想将OSM集成到GWT中.我发现这个库名为gwt-openlayers,但我不明白如何使其与OSM地图一起使用.
任何人都能提供一个简短的例子吗?
spring webflow文档提到他们向流添加消息的方法是在流中的文件messages.properties中定义关于该流的所有消息:
国际化消息在Spring MessageSource访问的消息包中定义.要创建特定于流的消息包,只需在流的目录中定义messages.properties文件即可.为您需要支持的每个其他区域设置创建默认的messages.properties文件和.properties文件.
在我们的webapp中,我们使用Spring Webflow和专有框架.我们将所有国际化消息都放在一个文件中,我们希望Spring Webflow可以访问这个消息,而不是使用几十个属性文件乱丢我们的项目.有没有办法为spring webflow配置消息源,还是我们坚持使用messages.properties?
任何人都可以告诉我,目前是否可以通过Jetty"粘合"部分Java EE 6 Web配置文件?我发现了很多关于将独立EJB 3容器,JTA提供程序等与旧Jetty版本集成的文章,所以如果我可以将它们全部一起工作,我就会更加努力.我想组装一个Servlet 3.0 + CDI + EJB 3.1 + JTA(如果需要,我真正想要的是声明式事务管理)+ Jetty 8上的JPA 2环境(如果没有可用的Jetty替代品,则为Tomcat 7).我的问题是:可以做到吗?有人设法做到了吗?有关将OpenEJB,Atomikos,Weld,EclipseLink和Jetty(或任何其他类似的堆栈)协同工作的任何文章?有没有神奇的"全部"pom.xml文件?
PS:是的,我知道我可以使用GlassFish(我非常喜欢).我只是想知道使用Servlet容器做类似工作有多难,以及两个环境在复杂性,性能,大小,部署速度,硬件资源消耗等方面的比较.
出于安全原因,我们的oracle db对象通常属于与登录用户不同的模式.例如.表位于xx_core中,我们登录的用户是xx_app_yy.在我的persistence.xml中,我定义了一个orm文件,以便我可以在部署时指定模式名称,例如:
<mapping-file>xx_schema_orm.xml</mapping-file>
然后在xx_schema_orm.xml中我可以定义对象拥有模式,例如:
<persistence-unit-metadata>
<persistence-unit-defaults>
<schema>xx_core</schema>
</persistence-unit-defaults>
</persistence-unit-metadata>
Run Code Online (Sandbox Code Playgroud)
这适用于表格,但我找不到序列的等价物.它尝试使用没有模式名称的序列,然后我得到一个例外:
2010-10-14 03:04:05,423:DEBUG could not get next sequence value [select xx_SEQ.nextval from dual] - org.hibernate.util.JDBCExceptionReporter
java.sql.SQLException: ORA-02289: sequence does not exist
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
我试图将模式名称设置为xx_schema_orm.xml中生成器的序列名称的一部分,但无法使其工作,例如:
<sequence-generator name="xx_SEQ_GEN"
sequence-name="xx_core.xx_SEQ"/>
Run Code Online (Sandbox Code Playgroud)
我可以尝试的解决方法:
我想在列"供应商"上加入两个表,在发票表供应商类型是整数,在供应商表中,供应商是类型varchar(10).
是否可以进行类型转换并且还有关系?
@Entity
public class Vendor
{
private String id;
@Id(Column="vendor")
public String getId(){ ... }
}
@Entity
public class Invoice
{
private Vendor vendor;
@One-to-one
public Vendor getVendor() { ... }
}
Run Code Online (Sandbox Code Playgroud) 我试图在gwt-openlayers中捕获鼠标事件.以下处理程序确实接收事件,但是我无法从EventObject对象中提取鼠标位置.有人可以帮忙吗?
mapPanel.getMap().getEvents().register("mousemove", mapPanel.getMap(), new EventHandler() {
@Override
public void onHandle(EventObject eventObject) {
// how to obtain mouse position ?
}
});
Run Code Online (Sandbox Code Playgroud)
另外,还有另一种接收鼠标移动事件的方法吗?我可以拦截MousePosition控件吗?
非常感谢您的帮助.
我正在寻找一个具有复合列表实现的开源库.我需要一个列表,从其他列表中读取其值,并可以构造如下:
List list1 = new ArrayList();
list1.add("0");
List list2 = new LinkedList();
list2.add("1");
list3.add("2");
List list3 = new CompositeList(list1, list2...)
Run Code Online (Sandbox Code Playgroud)然后:assertEquals("0", list3.get(0));
assertEquals("1", list3.get(1));
assertEquals("2", list3.get(2));
Run Code Online (Sandbox Code Playgroud)
我的想法是,我不需要复制源列表中的所有内容.
一个快速的谷歌没有找到任何东西,我没有在番石榴或公共收藏中看到它(我可能忽略了它).我现在没有足够的时间正确实施它.
我在我的项目中使用GWT-OpenLayers,我在转换坐标方面遇到了问题.我知道如何为单点做到这一点,transform(from,to)但我可以在不申请每一点的情况下这样做吗?现在我正在解析KLM数据以获取功能列表,我将它们添加到新的矢量中
java ×5
gwt ×2
jpa ×2
openlayers ×2
apache-tomee ×1
collections ×1
ejb-3.1 ×1
glassfish ×1
guava ×1
java-ee ×1
java-ee-6 ×1
jboss ×1
jetty ×1
openejb ×1
oracle ×1
persistence ×1
relationship ×1
spring ×1
types ×1