...

View Full Version : Embedded Windows Media Player - File loaded twice



StrongSteve
06-02-2009, 10:05 AM
Hi Everyone!

I am experiencing a weird behaviour embedding the Windows Media Player into an HTML (JSF) page.

Every file I reference using an URL is being loaded from the server twice.

This behaviour happens even if I open the URL using the installed Windows Media Player 11.

To make things clear, I have a servlet that send files back to the caller. This servlet is called exactly once when transfering PDFs, Images, Text files, ....
BUT as soon as the Windows Media Player requests a video file from the servlet it is being called twice. The first request to the servlet fails, becauce the client - Windows Media Player - has closed the outputstream. [1]

To get rid of everything - JSF framework specific - if have written a simple HTML Test file. [2] Unfortunately the same behaviour.

The weird thing is that even the installed Windows Media Player 11 calls the servlet twice on opening the Video URL.

Any ideas, hints? Is this a known problem with the Windows Media Player?

Thanks in Advance for both your time and knowledge!

Greetings
Stefan

[1]
DEBUG | 29-05-2009 09:42:22:484 | filters.ClientInformationFilter | 2D636E72F9D33B44008C4B0E59E6F5E8 | Requested URL: http://atpcp1xc:8080/xdc/transferDoc...-wmv&wmcache=0
DEBUG | 29-05-2009 09:42:25:109 | servlets.TransferDocumentServlet | 2D636E72F9D33B44008C4B0E59E6F5E8 | doGet started ...
WARN | 29-05-2009 09:42:25:125 | utils.Utils | 2D636E72F9D33B44008C4B0E59E6F5E8 | I/O problems when trying to close output stream for file
ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:319)
at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:288)
at org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.java:98)
at com.siemens.sis.ihe.xdc.bl.utils.Utils.copyStreams(Utils.java:84)
at com.siemens.sis.ihe.xdc.gui.servlets.TransferDocumentServlet.doGet(TransferDocumentServlet.java:182)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.siemens.sis.ihe.xdc.gui.filters.ClientInformationFilter.doFilter(ClientInformationFilter.java:91 )
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:740)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:434)
at org.apache.coyote.http11.InternalOutputBuffer.flush(InternalOutputBuffer.java:299)
at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:964)
at org.apache.coyote.Response.action(Response.java:183)
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:314)
... 21 more

[2]
<html>
<head>
<title>
</title>
</head>
<body>
<object classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
type="application/x-oleobject"
id="Player"
standby="Loading content..."
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701">
<param name="autoStart" value="true"/>
<param name="balance" value="0"/>
<param name="currentPosition" value="0"/>
<param name="enableContextMenu" value="false"/>
<param name="enabled" value="true"/>
<param name="fullScreen" value="false"/>
<param name="mute" value="false"/>
<param name="playCount" value="1"/>
<param name="rate" value="1.0"/>
<param name="uiMode" value="full"/>
<param name="url" value="http://atpcp1xc:8080/xdc/transferDocument.transfer?path=D:\HIBC\FakeRepository1\9487100683\010_Plastic Surgery_Jaw Reconstruction Planning__Dr.Balea_Hospital Vienna 4_.wmv&mimeType=video/x-ms-wmv&wmcache=0"/>
<param name="volume" value="70"/>
</object>
</body>
</html>

gyopaarka
07-28-2010, 06:33 PM
Hi All,
We are experiencing the same problem.
Does anybody solved this?
Even in case of big files, Media Player waits a lot of time between the two downloads and it is very annoying.

Major Payne
07-29-2010, 01:35 PM
Haven't a clue about the double server request, but if you are coding to XHTML 1.0, the closing for previously unclosed tags is a space followed immediately by a "/". Looks like you have the "/" first then a sapce then the ">". Putting a "/" right after a file may be causing the problem, but try correcting the code to XHTML 1.0 Standards. If you are NOT using XHTML, then remove all those closing tags on the tags that don't need them in HTML 4.01.



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum