[jira] [Updated] (WW-4559) Define a bean of java.io.FileInputStream in Spring makes the Struts stream result not work

2015-11-04 Thread Rene Gielen (JIRA)

 [ 
https://issues.apache.org/jira/browse/WW-4559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rene Gielen updated WW-4559:

Priority: Minor  (was: Major)

> Define a bean of java.io.FileInputStream in Spring makes the Struts stream 
> result not work
> --
>
> Key: WW-4559
> URL: https://issues.apache.org/jira/browse/WW-4559
> Project: Struts 2
>  Issue Type: Bug
>  Components: Dispatch Filter
>Reporter: Alireza Fattahi
>Priority: Minor
> Fix For: 2.3.x
>
>
> In a strust2 + Spring 4 project
> Consider a simple action with stream result 
> {code:title=Bar.java|borderStyle=solid}
> @Action(value = "sample-export", 
> results = { @Result(name = "success", type = "stream", params = {
> "inputName", "exportInputStream", "contentType",
> "${exportContentType}; charset=UTF-8", "Content-Disposition",
> "attachment; filename=\"${filename}\"", "contentDisposition",
> "attachment; filename=\"${filename}\"", "bufferSize", "2048" }) })
> public String export() throws ClientException {
> //buildExportInputStream() creates and returns new ByteArrayOutputStream 
> by using jasper
> exportInputStream = buildExportInputStream();
> LOG.debug("Exporting to {} file ", getFilename());
> return SUCCESS;
> }
> {code}
> This works fine,
> Now define a bean 
> {code:xml}
>  
>   
>   
> {code}
> The export will not work correctly any more, first time you get the 
> c:/sample.jks as file and then an  error which same stream already closed.
> I have found that the sampleStream will be autowired to 
> org.apache.struts2.dispatcher.StreamResult and I see this log:
> {panel:title=LOG|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#CE}
> DEBUG ort.DefaultListableBeanFactory Returning cached instance of singleton 
> bean 'sampleStream'
> DEBUG ort.DefaultListableBeanFactory Autowiring by type from bean name 
> 'org.apache.struts2.dispatcher.StreamResult' via constructor to bean named 
> 'sampleStream'
> {panel}
> This mistaken autowired is the source of problem ! Is there any workaround. 
> And by the way, why the sampleStream is autowired here !



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (WW-4559) Define a bean of java.io.FileInputStream in Spring makes the Struts stream result not work

2015-11-04 Thread Rene Gielen (JIRA)

 [ 
https://issues.apache.org/jira/browse/WW-4559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rene Gielen updated WW-4559:

Fix Version/s: (was: 2.3.x)
   2.5.x

> Define a bean of java.io.FileInputStream in Spring makes the Struts stream 
> result not work
> --
>
> Key: WW-4559
> URL: https://issues.apache.org/jira/browse/WW-4559
> Project: Struts 2
>  Issue Type: Bug
>  Components: Dispatch Filter
>Reporter: Alireza Fattahi
>Priority: Minor
> Fix For: 2.5.x
>
>
> In a strust2 + Spring 4 project
> Consider a simple action with stream result 
> {code:title=Bar.java|borderStyle=solid}
> @Action(value = "sample-export", 
> results = { @Result(name = "success", type = "stream", params = {
> "inputName", "exportInputStream", "contentType",
> "${exportContentType}; charset=UTF-8", "Content-Disposition",
> "attachment; filename=\"${filename}\"", "contentDisposition",
> "attachment; filename=\"${filename}\"", "bufferSize", "2048" }) })
> public String export() throws ClientException {
> //buildExportInputStream() creates and returns new ByteArrayOutputStream 
> by using jasper
> exportInputStream = buildExportInputStream();
> LOG.debug("Exporting to {} file ", getFilename());
> return SUCCESS;
> }
> {code}
> This works fine,
> Now define a bean 
> {code:xml}
>  
>   
>   
> {code}
> The export will not work correctly any more, first time you get the 
> c:/sample.jks as file and then an  error which same stream already closed.
> I have found that the sampleStream will be autowired to 
> org.apache.struts2.dispatcher.StreamResult and I see this log:
> {panel:title=LOG|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#CE}
> DEBUG ort.DefaultListableBeanFactory Returning cached instance of singleton 
> bean 'sampleStream'
> DEBUG ort.DefaultListableBeanFactory Autowiring by type from bean name 
> 'org.apache.struts2.dispatcher.StreamResult' via constructor to bean named 
> 'sampleStream'
> {panel}
> This mistaken autowired is the source of problem ! Is there any workaround. 
> And by the way, why the sampleStream is autowired here !



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (WW-4559) Define a bean of java.io.FileInputStream in Spring makes the Struts stream result not work

2015-11-02 Thread Alireza Fattahi (JIRA)

 [ 
https://issues.apache.org/jira/browse/WW-4559?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alireza Fattahi updated WW-4559:

Description: 
In a strust2 + Spring 4 project

Consider a simple action with stream result 
{code:title=Bar.java|borderStyle=solid}
@Action(value = "sample-export", 
results = { @Result(name = "success", type = "stream", params = {
"inputName", "exportInputStream", "contentType",
"${exportContentType}; charset=UTF-8", "Content-Disposition",
"attachment; filename=\"${filename}\"", "contentDisposition",
"attachment; filename=\"${filename}\"", "bufferSize", "2048" }) })
public String export() throws ClientException {
//buildExportInputStream() creates and returns new ByteArrayOutputStream by 
using jasper
exportInputStream = buildExportInputStream();
LOG.debug("Exporting to {} file ", getFilename());

return SUCCESS;

}
{code}

This works fine,

Now define a bean 
{code:xml}
 
  
  
{code}
The export will not work correctly any more, first time you get the 
c:/sample.jks as file and then an  error which same stream already closed.

I have found that the sampleStream will be autowired to 
org.apache.struts2.dispatcher.StreamResult and I see this log:
{panel:title=LOG|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#CE}
DEBUG ort.DefaultListableBeanFactory Returning cached instance of singleton 
bean 'sampleStream'
DEBUG ort.DefaultListableBeanFactory Autowiring by type from bean name 
'org.apache.struts2.dispatcher.StreamResult' via constructor to bean named 
'sampleStream'
{panel}
This mistaken autowired is the source of problem ! Is there any workaround. And 
by the way, why the sampleStream is autowired here !

  was:
In a strust2 + Spring 4 project

Consider a simple action with stream result 
{code:title=Bar.java|borderStyle=solid}
@Action(value = "sample-export", 
results = { @Result(name = "success", type = "stream", params = {
"inputName", "exportInputStream", "contentType",
"${exportContentType}; charset=UTF-8", "Content-Disposition",
"attachment; filename=\"${filename}\"", "contentDisposition",
"attachment; filename=\"${filename}\"", "bufferSize", "2048" }) })
public String export() throws ClientException {
//buildExportInputStream() creates and returns new ByteArrayOutputStream by 
using jasper
exportInputStream = buildExportInputStream();
LOG.debug("Exporting to {} file ", getFilename());

return SUCCESS;

}
{code}

This works fine,

Now define a bean 
{code:xml}
 
  
  
{code}
The export will not work correctly any more, first time you get the 
c:/sample.jks as file and then an  error which same stream already closed.

I have found that the sampleStream will be autowired to 
org.apache.struts2.dispatcher.StreamResult and I see this log:
{panel:title=My 
Title|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#CE}
DEBUG ort.DefaultListableBeanFactory Returning cached instance of singleton 
bean 'sampleStream'
DEBUG ort.DefaultListableBeanFactory Autowiring by type from bean name 
'org.apache.struts2.dispatcher.StreamResult' via constructor to bean named 
'sampleStream'
{panel}
This mistaken autowired is the source of problem ! Is there any workaround. And 
by the way, why the sampleStream is autowired here !


> Define a bean of java.io.FileInputStream in Spring makes the Struts stream 
> result not work
> --
>
> Key: WW-4559
> URL: https://issues.apache.org/jira/browse/WW-4559
> Project: Struts 2
>  Issue Type: Bug
>  Components: Dispatch Filter
>Reporter: Alireza Fattahi
> Fix For: 2.3.x
>
>
> In a strust2 + Spring 4 project
> Consider a simple action with stream result 
> {code:title=Bar.java|borderStyle=solid}
> @Action(value = "sample-export", 
> results = { @Result(name = "success", type = "stream", params = {
> "inputName", "exportInputStream", "contentType",
> "${exportContentType}; charset=UTF-8", "Content-Disposition",
> "attachment; filename=\"${filename}\"", "contentDisposition",
> "attachment; filename=\"${filename}\"", "bufferSize", "2048" }) })
> public String export() throws ClientException {
> //buildExportInputStream() creates and returns new ByteArrayOutputStream 
> by using jasper
> exportInputStream = buildExportInputStream();
> LOG.debug("Exporting to {} file ", getFilename());
> return SUCCESS;
> }
> {code}
> This works fine,
> Now define a bean 
> {code:xml}
>  
>   
>   
> {code}
> The export will not work correctly any more, first time you get the 
> c:/sample.jks as file and then an  error which same stream already closed.
> I have found that the sampleStream will be autowired to 
>