Uploaded image for project: 'Wicket'
  1. Wicket
  2. WICKET-4139

Encoding problem in CryptoMapper

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • 1.5.1
    • None
    • wicket
    • None
    • Mac OSX 10.7.2
      java version "1.6.0_26"
      Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511)
      Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode)

    Description

      CryptoMapper throws the following exception (see attached QuickStart):

      ERROR - AbstractCrypt              - Error decoding text: style.css
      java.lang.RuntimeException: Unable to decrypt the text '�ܥy�,'
      	at org.apache.wicket.util.crypt.AbstractCrypt.decryptByteArray(AbstractCrypt.java:150)
      	at org.apache.wicket.util.crypt.AbstractCrypt.decryptUrlSafe(AbstractCrypt.java:66)
      	at org.apache.wicket.request.mapper.CryptoMapper.decryptUrl(CryptoMapper.java:159)
      	at org.apache.wicket.request.mapper.CryptoMapper.mapRequest(CryptoMapper.java:102)
      	at org.apache.wicket.request.mapper.CompoundRequestMapper.mapRequest(CompoundRequestMapper.java:130)
      	at org.apache.wicket.request.cycle.RequestCycle.resolveRequestHandler(RequestCycle.java:179)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:204)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:251)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
      	at org.eclipse.jetty.server.Server.handle(Server.java:349)
      	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
      	at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
      	at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:50)
      	at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:245)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
      	at java.lang.Thread.run(Thread.java:680)
      Caused by: javax.crypto.IllegalBlockSizeException: Input length must be multiple of 8 when decrypting with padded cipher
      	at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
      	at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
      	at com.sun.crypto.provider.SunJCE_ab.b(DashoA13*..)
      	at com.sun.crypto.provider.PBEWithMD5AndDESCipher.engineDoFinal(DashoA13*..)
      	at javax.crypto.Cipher.doFinal(DashoA13*..)
      	at org.apache.wicket.util.crypt.SunJceCrypt.crypt(SunJceCrypt.java:94)
      	at org.apache.wicket.util.crypt.AbstractCrypt.decryptByteArray(AbstractCrypt.java:146)
      	... 30 more
      ERROR - CryptoMapper               - Error decrypting URL
      java.lang.IllegalArgumentException: Argument 'url' may not be null.
      	at org.apache.wicket.util.lang.Args.notNull(Args.java:39)
      	at org.apache.wicket.request.Url.parse(Url.java:127)
      	at org.apache.wicket.request.mapper.CryptoMapper.decryptUrl(CryptoMapper.java:160)
      	at org.apache.wicket.request.mapper.CryptoMapper.mapRequest(CryptoMapper.java:102)
      	at org.apache.wicket.request.mapper.CompoundRequestMapper.mapRequest(CompoundRequestMapper.java:130)
      	at org.apache.wicket.request.cycle.RequestCycle.resolveRequestHandler(RequestCycle.java:179)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:204)
      	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:251)
      	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162)
      	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1326)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:479)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
      	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:520)
      	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:227)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:940)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:409)
      	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:186)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:874)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:110)
      	at org.eclipse.jetty.server.Server.handle(Server.java:349)
      	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:441)
      	at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:904)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:565)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:217)
      	at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:50)
      	at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:245)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
      	at java.lang.Thread.run(Thread.java:680)
      
      

      Attachments

        1. QuickStart.zip
          22 kB
          Tom Götz

        Issue Links

          Activity

            People

              svenmeier Sven Meier
              thomas.goetz Tom Götz
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: