4.8.3360.beta3 Last.FM exception

Madsonic Mashup Mod is a fork of the Subsonic 4.7 Server Build 3090 with some Subsonic Data schema modifications!

Moderator: moderators

4.8.3360.beta3 Last.FM exception

Postby TheWarden » Wed Mar 27, 2013 5:52 pm

Hi,

Thought I'd report this exception I get when updating my library with the new "Sync Madsonic Artist Summary from Last.FM" option.

Code: Select all
Exception   net.sourceforge.subsonic.lastfm.CallException
Message   org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 55; The entity name must immediately follow the '&' in the entity reference.
Java version   Oracle Corporation 1.7.0_10
Operating system   Linux 2.6.33.2
Server   jetty-6.1.x
Memory   Used 135 of 201 MB
Stack trace   net.sourceforge.subsonic.lastfm.CallException: org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 55; The entity name must immediately follow the '&' in the entity reference.
   at net.sourceforge.subsonic.lastfm.Caller.call(Caller.java:276)
   at net.sourceforge.subsonic.lastfm.Caller.call(Caller.java:192)
   at net.sourceforge.subsonic.lastfm.Artist.getImages(Artist.java:402)
   at net.sourceforge.subsonic.service.LastFMService.startImportLastFMArtist(LastFMService.java:234)
   at net.sourceforge.subsonic.controller.LastFMSettingsController.handleRequestInternal(LastFMSettingsController.java:69)
   at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
   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:707)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
   at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
   at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
   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:124)
   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:174)
   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.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
   at net.sourceforge.subsonic.filter.RequestEncodingFilter.doFilter(RequestEncodingFilter.java:43)
   at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
   at net.sourceforge.subsonic.filter.ParameterDecodingFilter.doFilter(ParameterDecodingFilter.java:54)
   at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
   at net.sourceforge.subsonic.filter.BootstrapVerificationFilter.doFilter(BootstrapVerificationFilter.java:54)
   at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
   at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
   at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
   at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
   at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
   at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
   at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
   at org.mortbay.jetty.Server.handle(Server.java:313)
   at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
   at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
   at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
   at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
   at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
   at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
   at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Caused by: org.xml.sax.SAXParseException; lineNumber: 11; columnNumber: 55; The entity name must immediately follow the '&' in the entity reference.
   at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
   at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
   at net.sourceforge.subsonic.lastfm.Caller.createResultFromInputStream(Caller.java:332)
   at net.sourceforge.subsonic.lastfm.Caller.call(Caller.java:264)
   ... 57 more

TheWarden
 
Posts: 16
Joined: Tue Sep 13, 2011 9:55 am

Re: 4.8.3360.beta3 Last.FM exception

Postby bushman4 » Wed Mar 27, 2013 6:21 pm

Madsonic's Last.fm module does not correctly encode some special characters in artists names when making the query, in this case the ampersand (&).

Until he fixes that, the only workaround is to remove the ampersands from artist names...

A real bummer, because I don't get my details "Hall & Oats" biography... :wink:

Glenn
Glenn Sullivan
Subsonic 5.2.1 (Standalone on Apache/Tomcat 6)
WHS 2003, Dual Core Athlon, 4 Gb RAM, 12 TB
50 regular Subsonic Users

Library as of 2016-03-21:
4,034 artists
16,595 albums
182,904 songs
4582.16 GB
21,558 hours
User avatar
bushman4
 
Posts: 867
Joined: Thu Dec 02, 2010 1:47 pm
Location: Massachusetts, USA

Re: 4.8.3360.beta3 Last.FM exception

Postby larry.hanks » Sat Apr 13, 2013 8:56 pm

Would having an ampersand in your collection break all of the Last.FM features within MadSonic or would the system carry on and just ignore music that includes an ampersand?

The reason I ask is I can get my played music to register with last.fm but when I click the last.fm button on the top of the madsonic window, there is nothing on the window that appears. It just has the titles of each column (Loved Tracks, Top Albums, Top Artists, Top Tags) but no data under that.

When I've installed this I've tried it with upgrading from my existing version (4.8.332), installing with a fresh install and database, on a completely fresh install of Windows2008R2 and none of that seems to work. Everytime it's the same thing. I haven't noticed anything in the web-interface log file.

Is there more than one log file I should be looking at?

Any help would be appreciated.
larry.hanks
 
Posts: 22
Joined: Wed Mar 14, 2012 4:18 pm


Return to Madsonic

Who is online

Users browsing this forum: No registered users and 1 guest