我们针对的是Blackberry OS 6和7设备,并且遇到了Javascript和夏令时问题.我们在不同设备/操作系统版本中看到的行为是:
更具体的不同设备/版本:
有人知道这些问题和/或解决方法吗?
我找到了这个Blackberry问题,它解释了"所有日期的相同偏移"问题,我认为他们以错误的方式解决了这个问题:http://supportforums.blackberry.com/t5/Web-and-WebWorks-Development/ Javscript-GMT-Offfset -不工作,在-BB6-0 -设备-非手电筒/ TD-p/815883
我们还开发了一个测试页面,它通过执行一些简单的document.write(new Date(timestamp))语句来揭示问题,可在此处获取:http://bit.ly/QhJOIC
我有一个Weblogic 10.3.3安装,似乎有递归JSP标记的问题.在互联网上,我发现其他一些人遇到了同样的问题(这里和这里),但没有解决方案.有人建议它在Weblogic 12中修复,或者在9中工作,但我无法证实这一点.
该应用程序使用Spring/Spring Roo/Apache Tiles/jspx构建.正在显示的模型类如下:
public class Programme {
private String name;
private final List<Programme> programmes = new ArrayList<Programme>();
...(getter/setter)...
}
Run Code Online (Sandbox Code Playgroud)
然后我有这样的标签:
<jsp:root xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:coursedataimport="urn:jsptagdir:/WEB-INF/tags/coursedataimport" version="2.0">
<jsp:output omit-xml-declaration="yes" />
<jsp:directive.attribute name="programme" type="package.Programme" required="true" rtexprvalue="true" />
<c:out value="${programme.name}" />
<ul>
<c:forEach var="p" items="${programme.programmes}">
<li><coursedataimport:programme programme="${p}" /></li>
</c:forEach>
</ul>
</jsp:root>
Run Code Online (Sandbox Code Playgroud)
这不起作用.在请求页面时,应用程序容器似乎崩溃(可能是某些堆栈溢出,但我无法在日志中找到它),并且重新加载应用程序上下文.在Tomcat 7中,它运行正常.
显示的例外是这样的,但我不确定它是否相关(因为它谈到了错误页面):
[ServletContext @ 483389576 [app:app-ear-0 module:appmodule path:/ CONTEXTROOT spec-version:2.5]]服务错误页面时出现问题.org.springframework.web.util.NestedServletException:请求处理失败; 嵌套异常是org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.)中的org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:894)中的java.lang.ClassCastException:org.apache.tiles.ArrayStack. java:779)在javax.servlet.http.HttpServlet.service(HttpServlet.java:707)的javax.servlet.http.HttpServlet.service(HttpServlet.java:821)at ...
有没有人以前遇到过这些问题,或者有人知道修复过吗?关于如何调试它的任何提示,或如何解决递归标记(因为我想显示树,这是一个挑战).提前致谢.
目前我们有一个带有Spring MVC DispatcherServlet和两个CXFServlet的Java webapp.DispatcherServlet是默认的servlet(映射/),一个CXFServlet映射到/api/*另一个/services/*.
困扰我的是,似乎不可能有1个CXFServlet承载2个服务,一个打开/api/v0,一个打开/services/myService,没有映射/*到CXFServlet.如果这是可能的,它将节省初始化时间,配置麻烦和另一个servlet实例的内存要求.
所以基本上,我的问题是,是否有人知道如何在1个CXFServlet中的2个URL上托管2个CXF服务,没有共同的基础/根URL,最好使用Spring命名空间配置,而不映射/*到CXFServlet?
目前,如果我们在Tomcat上托管的Spring应用程序的数据库不可用,则上下文初始化失败,所有请求都返回404.
什么是解决这个问题的好方法?我不希望应用程序在下一个Tomcat之前不可用,我希望它在不可用时向用户显示错误消息,并在数据库可用时自动恢复(就像在Tomcat已经运行时发生数据库故障一样).
我可以将所有bean设置为lazy-init,但我不确定这是最好的解决方案吗?Tomcat不能每隔x秒/请求重试一次初始化并同时显示一个不错的错误页面吗?有什么想法吗?
数据库不可用时启动时抛出的错误示例:
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:529)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:128)
at org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy$LazyConnectionInvocationHandler.getTargetConnection(LazyConnectionDataSourceProxy.java:401)
at org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy$LazyConnectionInvocationHandler.invoke(LazyConnectionDataSourceProxy.java:376)
at com.sun.proxy.$Proxy43.getMetaData(Unknown Source)
at com.googlecode.flyway.core.dbsupport.DbSupportFactory.getDatabaseProductName(DbSupportFactory.java:103)
... 67 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1319)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:557)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:477)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:525)
... 72 more
Mar 28, 2013 11:19:47 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Mar 28, 2013 11:19:47 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context …Run Code Online (Sandbox Code Playgroud) 我们使用针对Office 365的Exchange Web服务(EWS)API在用户的日历中创建日历事件。这对于本地部署来说效果很好,但是对于Office 365部署,我们似乎很快就达到了限制。
创建16个事件之后,在16个不同用户的日历中(通过服务帐户,使用对日历的委托访问),我们收到以下错误:
ErrorTooManyObjectsOpened-打开的并发连接太多
大约5分钟后,此错误将清除,我们可以继续创建事件。看来EWS服务器缓存了到邮箱的连接,而Office 365似乎只允许一次连接到16个邮箱。
我们为克服此错误做了很多尝试,但没有找到“最终”解决方案或解决方法。我们尝试了什么:
X-AnchorMailboxand X-PreferServerAffinity标头,并在不使用HTTP和不使用HTTP cookie的情况下使请求保持活动状态,并在不使用HTTP cookie的情况下发出请求。从调试信息中我们可以看到,如果我们保留cookie /连接,我们通常会在同一前端服务器和后端服务器上工作;如果我们丢弃cookie却发送一个X-AnchorMailbox标头,那么我们通常会在不同的前端服务器上工作。只有CreateItems通话似乎会导致此问题,我们可以FindItems为许多用户提供服务而不会达到限制。
是否有人知道克服此限制的方法,例如,我们可以做一些呼叫来关闭Office 365端的缓存邮箱会话吗?或者会议室中是否有Office 365管理员可以阐明确切的限制条件,为什么它们比内部Exchange限制条件低很多?
其他详细信息:我们正在使用EWS Java API的修改版,但已进行了广泛的研究,并且非常确定此问题是在服务器端。
java ×4
spring ×2
blackberry ×1
cxf ×1
javascript ×1
jax-rs ×1
jax-ws ×1
jsp ×1
jsp-tags ×1
office365 ×1
spring-mvc ×1
timezone ×1
tomcat ×1
web ×1
weblogic ×1