Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Component/s: ACE-Components
-
Labels:None
-
Environment:ICEfaces 4
-
Affects:Documentation (User Guide, Ref. Guide, etc.), Sample App./Tutorial
Description
This component renders an HTML5 audio element. The component can be bound to a variety of source types. Playback options can be controlled. JSF Resource management options are also available.
Issue Links
- blocks
-
ICE-9921 ace:audioPlayer and ace:videoPlayer, scope attribute not working for IceOutputResource
- Closed
Activity
Ken Fyten
created issue -
Ken Fyten
made changes -
Field | Original Value | New Value |
---|---|---|
Description |
Render markup for <img> with support for byte[] for images from database.
|
This component renders an HTML5 audio element. The component can be bound to a variety of source types. Playback options can be controlled. JSF Resource management options are also available. |
Ken Fyten
made changes -
Link | This issue depends on MOBI-1004 [ MOBI-1004 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40120 | Tue Mar 04 14:48:27 MST 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/util/MediaPlayerUtils.java
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40121 | Tue Mar 04 15:22:17 MST 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/util/MediaPlayerUtils.java
|
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40123 | Tue Mar 04 15:41:13 MST 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/util/MediaPlayerUtils.java
|
Arturo Zambrano
made changes -
Status | Open [ 1 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Cruz Miraback
made changes -
Resolution | Fixed [ 1 ] | |
Status | Resolved [ 5 ] | Reopened [ 4 ] |
Repository | Revision | Date | User | Message |
ICEsoft Public SVN Repository | #40321 | Thu Mar 13 09:57:24 MDT 2014 | art.zambrano | |
Files Changed | ||||
MODIFY
/icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/util/MediaPlayerUtils.java
MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/videoplayer/VideoPlayerMeta.java MODIFY /icefaces4/trunk/icefaces/ace/component/src/org/icefaces/ace/component/audioplayer/AudioPlayerMeta.java |
Cruz Miraback
made changes -
Attachment | audioPlayerIssue.png [ 16886 ] |
Arturo Zambrano
made changes -
Arturo Zambrano
made changes -
Link | This issue blocks ICE-9920 [ ICE-9920 ] |
Arturo Zambrano
made changes -
Status | Reopened [ 4 ] | Resolved [ 5 ] |
Resolution | Fixed [ 1 ] |
Ken Fyten
made changes -
Fix Version/s | 4.0 [ 11382 ] |
Ken Fyten
made changes -
Status | Resolved [ 5 ] | Closed [ 6 ] |
ICEfaces4 trunk revision# 40068 Test Results
Test app is located at: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/audioPlayer
1) The audio does not play on page load when using autoplay=true.
2) Setting the value attribute to null or an empty string throws an exception:
SEVERE: java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(String.java:658)
at com.sun.faces.application.view.MultiViewHandler.getResourceURL(MultiViewHandler.java:383)
at javax.faces.application.ViewHandlerWrapper.getResourceURL(ViewHandlerWrapper.java:291)
at org.icefaces.impl.application.ExternalServletContextSetup.getResourceURL(ExternalServletContextSetup.java:43)
at org.icefaces.ace.util.MediaPlayerUtils.processStaticSrc(MediaPlayerUtils.java:67)
at org.icefaces.ace.util.MediaPlayerUtils.processSrcAttribute(MediaPlayerUtils.java:92)
at org.icefaces.ace.util.MediaPlayerUtils.deriveAndSetSourceAttribute(MediaPlayerUtils.java:53)
at org.icefaces.ace.component.audioplayer.AudioPlayerRenderer.encodeEnd(AudioPlayerRenderer.java:44)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1903)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
at org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:49)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1899)
at org.icefaces.impl.context.DOMPartialViewContext.processPartial(DOMPartialViewContext.java:162)
at javax.faces.component.UIViewRoot.encodeChildren(UIViewRoot.java:1004)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1896)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:425)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1852)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
3) The url attribute is not being used at all, even if the value attribute is not present the URL attribute does nothing.
4) Changing the value attribute dynamically when using a byte array does nothing, the audio source stays as what it was originally. No dynamic issues when using a filename or JSF resource as the value.
5) In the add row to top/bottom tests, sometimes adding rows will case the audioPlayers on the page to disappear. They don't show up again unless you clear the cache and reload the page. In the console there is a warning:
Media resource (url-to-file) could not be decoded.
6) Sometimes when playing the audio, clicking ahead on the time bar will make the time indicator jump to the end of the clip and stop playing. After this the audio cannot be played unless you reload the page. This only seems to occur with certain audio clips (can reproduce this on the dynamic attribute test page with the 'Around The World' clip).
7) Need more info / further test instructions on the scope attribute.