Commit Graph

3979 Commits

Author SHA1 Message Date
Przemek Bruski 6834b78fe9 WW-4427 - Converters are no longer applied to values coming from the context - fix and UT 2014-12-09 17:17:15 +01:00
Lukasz Lenart adb7b8c73f Updates link which points to Confluence docs 2014-12-05 11:44:02 +01:00
Lukasz Lenart 5f2898eadf Cleans up Maven generated website 2014-12-02 12:41:06 +01:00
Lukasz Lenart ae4e3d116b Reformats source code 2014-11-21 21:55:40 +01:00
Lukasz Lenart 3e0e3836eb Merge branch 'master' into develop 2014-11-21 21:53:43 +01:00
Lukasz Lenart 2886a30917 Merge branch 'release/2.3.20' 2014-11-21 21:53:36 +01:00
Lukasz Lenart 5078537ff6 [maven-release-plugin] prepare for next development iteration 2014-11-21 19:30:20 +01:00
Lukasz Lenart 0320310406 [maven-release-plugin] prepare release STRUTS_2_3_20 STRUTS_2_3_20 2014-11-21 19:30:08 +01:00
Lukasz Lenart 1f301038a7 Uses better random generator 2014-11-21 19:21:35 +01:00
Lukasz Lenart e1025a207d WW-4391 reverts changes as this breaks WW-4420 2014-11-17 11:39:38 +01:00
Lukasz Lenart 77c76dc691 Merge branch 'master' into develop 2014-11-17 11:31:58 +01:00
Lukasz Lenart aebdad9f6c Merge branch 'release/2.3.19' 2014-11-17 11:31:52 +01:00
Lukasz Lenart f7f4915bd3 [maven-release-plugin] prepare for next development iteration 2014-11-14 08:31:27 +01:00
Lukasz Lenart 0032390ee8 [maven-release-plugin] prepare release STRUTS_2_3_19 STRUTS_2_3_19 2014-11-14 08:31:12 +01:00
Lukasz Lenart 8c222622e1 Update version used by bom 2014-11-14 08:20:46 +01:00
Lukasz Lenart 70af4b649a Prepares for next development cycle 2014-11-14 08:17:15 +01:00
zhouyanming 7bce8ef6a8 Defend for NPE when performing async request
when I combined spring async mvc with struts2 sitemesh plugin, It will throw NPE

java.lang.NullPointerException
	at org.apache.struts2.ServletActionContext.getRequest(ServletActionContext.java:112)
	at org.apache.struts2.sitemesh.StrutsSiteMeshFactory.isInsideActionTag(StrutsSiteMeshFactory.java:25)
	at org.apache.struts2.sitemesh.StrutsSiteMeshFactory.shouldParsePage(StrutsSiteMeshFactory.java:21)
	at com.opensymphony.sitemesh.compatability.PageParser2ContentProcessor.handles(PageParser2ContentProcessor.java:45)
	at com.opensymphony.sitemesh.webapp.ContentBufferingResponse$1.shouldParsePage(ContentBufferingResponse.java:29)
	at com.opensymphony.module.sitemesh.filter.PageResponseWrapper.setContentType(PageResponseWrapper.java:63)
	at com.opensymphony.sitemesh.webapp.ContentBufferingResponse$2.setContentType(ContentBufferingResponse.java:39)
	at com.opensymphony.module.sitemesh.filter.PageResponseWrapper.addHeader(PageResponseWrapper.java:135)
	at javax.servlet.http.HttpServletResponseWrapper.addHeader(HttpServletResponseWrapper.java:173)
	at org.springframework.http.server.ServletServerHttpResponse.writeHeaders(ServletServerHttpResponse.java:103)
	at org.springframework.http.server.ServletServerHttpResponse.getBody(ServletServerHttpResponse.java:83)
	at org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter.writeInternal(AbstractJackson2HttpMessageConverter.java:217)
	at org.springframework.http.converter.AbstractHttpMessageConverter.write(AbstractHttpMessageConverter.java:208)
	at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:161)
	at org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor.writeWithMessageConverters(AbstractMessageConverterMethodProcessor.java:101)
	at org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor.handleReturnValue(RequestResponseBodyMethodProcessor.java:199)
	at org.springframework.web.method.support.HandlerMethodReturnValueHandlerComposite.handleReturnValue(HandlerMethodReturnValueHandlerComposite.java:71)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:128)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:781)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:721)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)
	at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:857)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:748)
	at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:659)
	at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:625)
	at org.apache.catalina.core.AsyncContextImpl$1.run(AsyncContextImpl.java:239)
	at org.apache.catalina.core.AsyncContextImpl.doInternalDispatch(AsyncContextImpl.java:382)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:215)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.asyncDispatch(CoyoteAdapter.java:299)
	at org.apache.coyote.http11.AbstractHttp11Processor.asyncDispatch(AbstractHttp11Processor.java:1652)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
2014-11-13 16:06:00 +08:00
Michael Stevens 6291fa920d Fix Memory leak in CDI plugin
The CDI plugin was using a single 'CreationalContext' for all beans created by the CDIObjectFactory. This is incorrect and the size of the 'dependentInstances' (in the WELD implementation) grows indefinately with no beans being removed. 
Fix is to use a new 'CreationalContext' for every bean created. In our tests with WELD this does not effect the applications performance. Idealy a single 'CreationalContext' should be created for the request lifecycle. However the struts ObjectFactory API does not appear to provide any information able the lifecycle.
2014-11-12 13:35:15 +01:00
Lukasz Lenart 266f83f15c Polishes how error messages are displayed 2014-11-12 09:59:31 +01:00
Lukasz Lenart eeab265282 Uses default scope to create params checkers 2014-11-12 09:59:10 +01:00
Lukasz Lenart 1aa2752dec Reverts acceptParamNames to previous behaviour 2014-11-10 08:43:04 +01:00
Lukasz Lenart cc11cc275c WW-4408 Delays call to get instance of LocaleProvider 2014-10-15 07:58:15 +02:00
Aleksandr Mashchenko 61cffe68fe improved interceptor that accepts and maps JSON array 2014-10-13 20:07:07 +03:00
cnenning 381e927575 logging missing text keys only after all resource bundles have been
searched, see WW-4407
2014-10-13 13:19:54 +02:00
Lukasz Lenart 92f38df890 Groups fields for better readability 2014-10-01 07:50:50 +02:00
Lukasz Lenart 6098ef036b Adds missing info about AcceptedPatternsChecker extension point 2014-09-30 08:09:30 +02:00
Aleksandr Mashchenko 6e95cf5bf7 use locale from action context 2014-09-27 17:50:19 +03:00
Lukasz Lenart 587e3a41b1 Adds BeanInfo to allow define class attribute in JSPs 2014-09-23 23:02:31 +02:00
Lukasz Lenart 3b9d58614f Adds proper exception handling during calling action
This will allow ExceptionHandler to work
2014-09-23 21:44:50 +02:00
Lukasz Lenart 4f4f526002 WW-4165 Checks if dynamic attributes don't overlap tag attributes
This can be done only in a component as when dynamic attributes are set
by a container on the tag, the component wasn't instantiated yet - it
will be created in doStartTag method which is called after all
attributes were set
2014-09-22 09:01:11 +02:00
Lukasz Lenart bc78860efb Adds parent pom to use common DM settings 2014-09-22 08:43:55 +02:00
Lukasz Lenart 87c204ef6c WW-3698 Updates JavaDoc about new wrapField parameter 2014-09-21 11:05:05 +02:00
Lukasz Lenart d2b22b9132 Solves minor style problems 2014-09-16 21:25:26 +02:00
Lukasz Lenart 3447eefdac WW-4365 Solves problem with matching option id to headerKey 2014-09-16 21:23:37 +02:00
Lukasz Lenart e01109697f WW-4347 Adds support for JDK8 lambdas 2014-09-16 09:37:37 +02:00
Lukasz Lenart 63fa04e814 WW-4345 Reverts the commit 8aa4fe8606 2014-09-16 08:51:16 +02:00
Lukasz Lenart f49b084fbe WW-4383 Clears output to avoid infinitive loops 2014-09-16 08:42:11 +02:00
Johannes Geppert 3826c3098f Switch to latest bootstrap version 3.2.0 in REST Showcase 2014-08-31 14:55:05 +02:00
Johannes Geppert fbf4113c2e WW-4399 struts2-archetype-angularjs uses absolute paths 2014-08-31 14:09:38 +02:00
Johannes Geppert b88c5d561f WW-4400 Replace outdated AngularJS version with latest stable AngularJS version 2014-08-31 14:05:27 +02:00
Johannes Geppert a16cedb26e Adjust archetype to API changes of AngularJS version 1.2.x 2014-08-31 13:54:33 +02:00
Johannes Geppert 387f8027fd DOCTYPE needs to be in first line for valid HTML5 2014-08-31 13:36:08 +02:00
Johannes Geppert 810711ccd2 Upgrade AngularJS to latest stable AngularJS version 1.2.23 2014-08-31 13:32:50 +02:00
Lukasz Lenart da2f2a5ae5 WW-4398 Adds support to map parameters to java.util.Set of complex type 2014-08-28 07:42:58 +02:00
Josh Mabry ca9dbb1fb9 Allow a Set to be of Complex Objects. This was based off the setProperty of the XWorkListPropertyAccessor 2014-08-26 16:41:16 -05:00
Josh Mabry ff17307afc If you are wanting a Set, we should give you a Set 2014-08-26 16:39:54 -05:00
Lukasz Lenart c1c10e017b Adds default velocity.properties with disabled logging 2014-08-26 08:37:17 +02:00
Lukasz Lenart 69baf692a4 WW-4024 Allows specify scheme via expression 2014-08-25 21:34:54 +02:00
Lukasz Lenart 367e3ef493 Formats source code 2014-08-25 21:23:20 +02:00
Lukasz Lenart 6f58de3f8b Solves minor issue with example 2014-08-25 20:55:05 +02:00