Openbravo Issue Tracking System - Retail Modules
View Issue Details
0030701Retail ModulesWeb POSpublic2015-08-30 07:342015-09-16 09:18
mtaal 
mtaal 
normalminorhave not tried
closedfixed 
5
 
RR15Q4RR15Q4 
migueldejuana
No
0030701: Offline login and then server getting back does not work fine
When doing an offline login no authentication token is created, so these are send as undefined to the server resulting in errors there. See screenshots.

65651 [http-8080-3] ERROR org.openbravo.mobile.core.process.MobileService - HTTPSecureAppServlet.service() - exception caught:
org.openbravo.base.exception.OBException: Exception when decrypting undefined
    at org.openbravo.mobile.core.authenticate.MobileAuthenticationKeyUtils.decrypt(MobileAuthenticationKeyUtils.java:167)
    at org.openbravo.mobile.core.authenticate.MobileKeyAuthenticationManager.doAuthenticate(MobileKeyAuthenticationManager.java:50)
    at org.openbravo.authentication.AuthenticationManager.authenticate(AuthenticationManager.java:142)
    at org.openbravo.base.secureApp.HttpSecureAppServlet.service(HttpSecureAppServlet.java:203)
    at org.openbravo.client.kernel.BaseKernelServlet.callServiceInSuper(BaseKernelServlet.java:88)
    at org.openbravo.mobile.core.process.WebServiceAuthenticatedServlet.service(WebServiceAuthenticatedServlet.java:53)
    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.codehaus.enunciate.webapp.HTTPRequestContextFilter.doFilter(HTTPRequestContextFilter.java:36)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.client.analytics.OBSpringSecurityContextRequestFilter$1.doAction(OBSpringSecurityContextRequestFilter.java:71)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.client.analytics.OBSpringSecurityContextRequestFilter.doFilter(OBSpringSecurityContextRequestFilter.java:79)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.SessionExpirationFilter.doFilter(SessionExpirationFilter.java:66)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.utils.CharsetFilter.doFilter(CharsetFilter.java:35)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.client.kernel.KernelFilter$1.doAction(KernelFilter.java:62)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.client.kernel.KernelFilter.doFilter(KernelFilter.java:71)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.openbravo.dal.core.DalRequestFilter$1.doAction(DalRequestFilter.java:81)
    at org.openbravo.dal.core.ThreadHandler.run(ThreadHandler.java:46)
    at org.openbravo.dal.core.DalRequestFilter.doFilter(DalRequestFilter.java:103)
    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:127)
    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:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    at java.lang.String.substring(String.java:1911)
    at org.openbravo.mobile.core.authenticate.MobileAuthenticationKeyUtils.decrypt(MobileAuthenticationKeyUtils.java:145)
    ... 42 more
Login normally in webpos
create a ticket
logout
bring server down
do offline login
enter a ticket
check the console/network from chrome developer tools
No tags attached.
related to defect 0030560 closed migueldejuana Pending synchronization info is not working fine 
blocks feature request 0029912 closed mtaal WebPOS Transparent Multi-Server Environments 
png Selection_102.png (332,111) 2015-08-30 07:34
https://issues.openbravo.com/file_download.php?file_id=8395&type=bug
png Selection_103.png (92,012) 2015-08-30 07:34
https://issues.openbravo.com/file_download.php?file_id=8396&type=bug
png
Issue History
2015-08-30 07:34mtaalNew Issue
2015-08-30 07:34mtaalAssigned To => mtaal
2015-08-30 07:34mtaalFile Added: Selection_102.png
2015-08-30 07:34mtaalTriggers an Emergency Pack => No
2015-08-30 07:34mtaalFile Added: Selection_103.png
2015-08-30 07:34mtaalRelationship addedrelated to 0030560
2015-08-30 07:37mtaalNote Added: 0079817
2015-09-09 08:52hgbotCheckin
2015-09-09 08:52hgbotNote Added: 0080253
2015-09-09 08:52hgbotStatusnew => resolved
2015-09-09 08:52hgbotResolutionopen => fixed
2015-09-09 08:52hgbotFixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/c99e1110f8997d04360e3b349ae0fc37ce4df34f [^]
2015-09-09 10:08mtaalRelationship addedblocks 0029912
2015-09-15 14:06mtaalReview Assigned To => migueldejuana
2015-09-16 09:18migueldejuanaNote Added: 0080427
2015-09-16 09:18migueldejuanaStatusresolved => closed
2015-09-16 09:18migueldejuanaFixed in Version => RR15Q4

Notes
(0079817)
mtaal   
2015-08-30 07:37   
Also change the message after an order is closed, currently it says data synchronization successful.

The data sync successful should be shown after the data is sent to a main server.
(0080253)
hgbot   
2015-09-09 08:52   
Repository: erp/pmods/org.openbravo.mobile.core
Changeset: c99e1110f8997d04360e3b349ae0fc37ce4df34f
Author: Martin Taal <martin.taal <at> openbravo.com>
Date: Tue Sep 08 17:18:05 2015 +0200
URL: http://code.openbravo.com/erp/pmods/org.openbravo.mobile.core/rev/c99e1110f8997d04360e3b349ae0fc37ce4df34f [^]

Fixes issue 30701: Offline login and then server getting back does not work fine
Handle exceptions in a more subtle way

---
M src/org/openbravo/mobile/core/authenticate/MobileAuthenticationKeyUtils.java
---
(0080427)
migueldejuana   
2015-09-16 09:18   
Tested and reviewed in 5fa909d5e1af