我需要更改java在Windows 2008 Server计算机上使用的默认语言环境.Java是作为Oracle + Application服务器设置的一部分安装的.我可以在代码中执行此操作,但我需要永久更改此设置.
编辑:我应该注意,我们正在讨论通过应用程序服务器提供的jsp页面,因此我无法将命令行参数完全传递给java.机器的区域和语言选项已经设置为我需要的(希腊语).Java的默认语言环境仍然是en_US而不是el_GR.
编辑和解决方案:我正在将现有应用移植到新服务器.该应用程序将默认语言环境视为理所当然,这在新服务器上运行得不是很好(它可以在我的机器上工作).我希望不必触及代码本身,但最终决定在所有页面已包含的文件中明确设置in-code中的默认语言环境.不是最优雅的解决方案,但是,它确实有效.
在将应用程序从单个Websphere Application Server移动到Websphere集群之前,我们应该注意什么
我用来在Linux和Windows下使用user.home + app_name目录.但Android为user.home提供的目录无权编写.那么存储应用程序数据的常见做法是什么?我的情况更加复杂.我需要存储的数据不属于Android应用程序,它们属于Android设备上部署的Web应用程序,因此使用标准Android方式的建议可能对我不起作用.
我是一名Java开发人员,我在使用Java进行Web应用程序开发方面相当新,我有以下疑问.
我们正在开发部署在Oracle WebLogic Server上的Web应用程序.
weblogic域究竟是什么?根据我的理解,每个应用程序使用一个定义的域.但究竟是什么呢?
我一直在将Web应用程序部署到Weblogic服务器.但是,虽然我能够在此新版本中成功部署应用程序,但应用程序无法启动,用户无法登录.日志是:
May 29, 2015 4:38:47 PM org.springframework.web.context.ContextLoader initWebApplicationContext
SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey;
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1566)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
Run Code Online (Sandbox Code Playgroud)
我相信这是因为Weblogic默认启用JPA 2.0(但我不确定).有没有办法启用JPA 2.1?
PS:我们正在使用hibernate 4.3.8,而且我不是应用服务器方面的专家.
问候.
我已经实现了一个服务器端应用程序,它记录了创建和更新记录时的时间戳.该应用程序假定服务器时钟没有启用夏令时,(a)因为我读过这是最佳做法和(b)因为我认为处理发生的歧义会很棘手(如果不是不可能的话),例如,当时钟在10月回归一个小时.
为安全起见,如果应用程序在启动时检测到DST已启用,则会记录错误并终止应用程序.即使应用服务器时钟启用了DST,我也会被内部利益相关者请求使应用程序正常工作.
我觉得尝试这样做是个愚蠢的事情,但我需要说服管理层.只是因为它使实现变得更加棘手,或者它是否存在根本上的缺陷,以至于这样的应用程序(记录时间戳)在一年中的任何时候都无法正确运行100%?在没有启用DST的情况下运行这样的应用程序的最佳理由是什么?
我想出的最好的是:
启用夏令时后,每年有两次不连续时间.请考虑以下情形,其中服务器在英国运行,时钟设置为启用夏令时的本地时间:2009年10月25日凌晨2点,时钟可以追溯到凌晨1点到凌晨1点. 记录在凌晨1点30分创建 应用程序(必须以UTC格式存储时间戳)无法判断这是在时钟返回之前或之后的1.30am,因此无法确定是否在UTC调整中包含额外的小时.
这是真的?实际上是否可以确定(在Java Web应用程序中)10月25日凌晨1点30分发生的事件是在时钟调整之前还是之后?
避免夏令时的任何更好的理由?
更新
需要明确的是,应用程序必须将时间存储为UTC.问题是为什么在尝试这样做时,在服务器计算机上启用DST是一个坏主意.
编辑
我需要换www.myhost.com:8080/myproject-war
到www.myhost.com
.这是我一直在尝试的:
我说明了Virtual Server: server
.我仍然有默认的网络侦听器是http-listener-1和http-listner-2.我将默认Web模块更改为ScholarActive#ScholarActive-war.war
(下拉列表中的唯一选项,因为我只部署了1个应用程序).
对于docroot
,我试试这个
${com.sun.aas.instanceRoot}/applications/ScholarActive/ScholarActive-war_war
Run Code Online (Sandbox Code Playgroud)
或这个
${com.sun.aas.instanceRoot}/applications/ScholarActive/
Run Code Online (Sandbox Code Playgroud)
两者都不起作用.docroot需要指出什么才能实现?
我尝试做的是:当我键入localhost:8080/ScholarActive-war,然后我的应用程序加载,我想这样做,如果我键入locahost:8080,它将加载应用程序,然后剩下的是改变了港口到80.但没有运气.任何的想法?
我注意到运行 Jboss 时这两个选项都可用,并且它们都重新编译项目(我注意到“make”同时运行)。我确实看到了这个问题,接受的答案是有道理的,但我不确定热插拔是什么意思。无需重新启动服务器即可注册的更改的可能示例是什么?
JNDI Name
数据源的标准命名约定是什么?
假设我有一个名为MyAppDS的数据源.什么是标准的命名约定JNDI Name
为MyAppDS?
谢谢
早些时候我使用 Jboss 7.1,我在其中配置了 gzip 过滤器的以下属性,以便它提高我的产品性能。它工作正常。
<property name="org.apache.coyote.http11.Http11Protocol.COMPRESSION" value="force"/>
<property name="org.apache.coyote.http11.Http11Protocol.COMPRESSION_MIME_TYPES" value="text/javascript,text/css,text/html"/>
<property name="org.apache.coyote.http11.Http11Protocol.COMPRESSION_MIN_SIZE" value="1000"/>
Run Code Online (Sandbox Code Playgroud)
现在,我最近迁移到 Wildfly 13,我认为,这些属性不起作用。所以,你能帮我解决这个问题吗?
另外,是否还有其他重要的配置可以提高 Wildfly 的性能?