Page 1 of 1

sun.java2d.Disposer blows up

PostPosted: Mon Dec 21, 2009 11:31 pm
by tacgnol
I am getting this weird error when subsonic tries to create thumbnails. I am running the newest version of subsonic (2.8) on OS X via Tomcat 6. Here's the error:

Code: Select all
[2009-12-21 18:15:01,864] WARN CoverArtController - Failed to create thumbnail for /Users/tacgnol/Music/Bad Company - Shot Down On Safari/CD1/01 - Bad Company - Mo'fire .mp3
java.lang.NoClassDefFoundError: Could not initialize class sun.java2d.Disposer
        at javax.imageio.stream.FileCacheImageInputStream.<init>(FileCacheImageInputStream.java:94)
        at com.sun.imageio.spi.InputStreamImageInputStreamSpi.createInputStreamInstance(InputStreamImageInputStreamSpi.java:51)
        at javax.imageio.ImageIO.createImageInputStream(ImageIO.java:331)
        at javax.imageio.ImageIO.read(ImageIO.java:1325)
        at net.sourceforge.subsonic.controller.CoverArtController.getCachedImage(CoverArtController.java:140)
        at net.sourceforge.subsonic.controller.CoverArtController.handleRequest(CoverArtController.java:92)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:625)
        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 org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
        at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
        at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:43)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:54)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:54)
        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:637)


I am guessing something is not right with my install of Java? anyone know for sure what's wrong though?

Thanks!

PostPosted: Tue Dec 22, 2009 12:57 am
by tacgnol
so I think it has to do with mod_jk because when I run subsonic as a standalone app or through Tomcat (port 8080) it seems to run fine. I am guessing there's some type of conifg for jk I have to set up?

PostPosted: Tue Dec 22, 2009 1:19 am
by tacgnol
Looking in one of the tomcat logs (localhost.2009..) I found this:

Code: Select all
Dec 21, 2009 8:14:34 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet subsonic threw exception
java.lang.NoClassDefFoundError: Could not initialize class sun.java2d.Disposer
        at javax.imageio.stream.FileCacheImageInputStream.<init>(FileCacheImageInputStream.java:94)
        at com.sun.imageio.spi.InputStreamImageInputStreamSpi.createInputStreamInstance(InputStreamImageInputStreamSpi.java:51)
        at javax.imageio.ImageIO.createImageInputStream(ImageIO.java:331)
        at javax.imageio.ImageIO.read(ImageIO.java:1325)
        at net.sourceforge.subsonic.controller.CoverArtController.sendDefault(CoverArtController.java:111)
        at net.sourceforge.subsonic.controller.CoverArtController.handleRequest(CoverArtController.java:87)
        at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:625)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
        ...

PostPosted: Tue Dec 22, 2009 1:32 pm
by tacgnol
I am guessing that maybe running subsonic in Tomcat is missing a jar although I put jai_core.jar into /Library/Tomcat/Extensions/ and the error is still happening.

I checked all the permissions (eg, /var/subsonic/thumbs/) and they are all set correctly too.

PostPosted: Tue Dec 22, 2009 1:50 pm
by tacgnol
Ok, I fixed my problem. I disabled mod_jk and am just using proxy module to forward requests to Tomcat

Thanks!

how?

PostPosted: Tue May 01, 2012 11:50 pm
by spookybathtub
Can you explain more how you fixed this? I'm getting the exact same error with thumbnails, but I don't know anything about mod_jk. I just installed Tomcat6 on my OS X server, and am running Subsonic 4.6. The server is also running Lion's built-in apache, if that makes any difference. Could you explain how you disabled mod_jk, and are there any other implications of doing that?

Re: sun.java2d.Disposer blows up

PostPosted: Wed May 02, 2012 12:11 am
by BKKKPewsey
As that user last visited the forum in 2010 you may be waiting awhile for a reply :roll:

Re: sun.java2d.Disposer blows up

PostPosted: Wed May 02, 2012 4:51 am
by GJ51
He could always try a pm to see if he's still alive. Goodness only knows if he still remembers what he did. :lol:

I think we all should also put in requests for better emoticons, like the ones in Skype. :idea:

Solved

PostPosted: Wed May 02, 2012 5:43 am
by spookybathtub
I figured it out. Had to add this line to the startup script (Tomcat5.sh)
Code: Select all
CATALINA_OPTS=-Djava.awt.headless=true

Re: sun.java2d.Disposer blows up

PostPosted: Wed May 02, 2012 6:08 am
by GJ51
Sounds like you've really made some headway on your setup. Now, how many of those 6000 CD's have you ripped? :wink:

Thanks for the info on the LDAP setup, I'm gonna give it a go after I get a Sharepoint fiasco sorted out.

Re: sun.java2d.Disposer blows up

PostPosted: Wed May 02, 2012 6:23 am
by spookybathtub
Only about 400 so far. It's been a lot of work on the other end setting up the Ripstation machine. It runs on Windows, so I set up Cygwin and wrote some scripts to transfer the rips to the Subsonic server. As much as I love automation and scripting, it kills me to have to physically box and unbox all the stinkin' jewel cases. We hired someone today to do all that, so it should be done in 3 weeks.