Ive downloaded the new patch for OE Developer and extracted the files. The Developer studio is still looking at the old mobile app builder website, how do I correct this?
Hello Meyrick,
Thank you for your time to look at this issue together. I am glad that the project worked just fine after adding the Session Service and calling the new services.
Here is a summary of the issue and its resolution in case that others run into this issue.
The Mobile project was created in Mobile App Builder 9.0 and contained the MobileService_Login, MobileService_Logout and MobileService_Settings entries in Services. The implementation code for these services used SessionLogin.js and SessionLogout.js (the code for these services was inline).
When the project was upgraded to use the latest features, a new version of SessionLogin.js and SessionLogout.js was provided (the code for these services use a wrapper code that calls an object with the implementation).
However, since the old services were still in used, it was trying to use the new version of the code and would fail with the message:
Uncaught TypeError: Cannot read property 'serviceSettings' of undefined progress.mobile.3.0.js:671
To resolve this issue you would either need the following:
1) Old version of the code.
2) Add a new Session Service.
Prior to the upgrade, you could have renamed the old implementation files so that the old services would continue working.
We have added a note mentioning about this to the upgrade steps:
docs.mobile.rollbase.com/.../upgrading-an-existing-mobile-app
Since the project was already upgrade the adding a new Session Service was the best approach.
To add a new Session Service you could do the following:
1) Add a new Session Service using New->Sesssion Service.
2) Use the upgrade steps "Adding Session Service and Login Page to Upgraded Mobile Apps".
These steps are now documented in the upgrade page and also in the wiki:
community.progress.com/.../2186.openedge-mobile-white-papers.aspx
Option #2, with the white paper, guides you through adding a new Session Service and Login page that can be used as examples.
Because you already had a LoginPage in your project it was easier to use that option #1 with your LoginPage and set the SessionService_Settings (Catalog URIs and Service URI) and usage of the Session Service, Login Service and Logout Services.
The Session Service needs to be called first, then the Login and Logout Services need to be called (generally from a button), and call then the JSDO Service.
The document "Adding Session Service and Login Page to Upgraded Mobile Apps", mentioned above, talks about this.
The white paper on how to build a Mobile app from the Phone App template also talks about this:
community.progress.com/.../9823.aspx
When using the new implementation files, old MobileService_Login and MobileService_Logout are no longer need and would continue to throw the exception. These must be deleted.
Thank you and regards.
Ive downloaded the new patch for OE Developer and extracted the files. The Developer studio is still looking at the old mobile app builder website, how do I correct this?
Flag this post as spam/abuse.
Meyrick Flanegan |
Developer - Managed Services |
Email: mflanegan@elcb.co.za |
|
ELCB Information Services (Pty) Ltd |
Customer Service Email elcb@elcb.co.za · www.elcb.co.za |
E A S T L O N D O N Tel: +27(43) 704 0700 Fax: +27(43) 704 0701 |
J O H A N N E S B U R G Tel: +27(11) 879 6179 Fax: +27(11) 454 0384 |
P O R T E L I Z A B E T H Tel: +27(41) 373 0529 Fax: +27(86) 650 0135 |
Ive downloaded the new patch for OE Developer and extracted the files. The Developer studio is still looking at the old mobile app builder website, how do I correct this?
Flag this post as spam/abuse.
Flag this post as spam/abuse.
Hi Anil,
Ive update the OE Developer studio correctly now but now my mobile app will not work like it used to, when i try test it.
I am getting this error:
Uncaught TypeError: Cannot read property 'serviceSettings' of undefined progress.mobile.3.0.js:671
init progress.mobile.3.0.js:671
$t.SessionLogin.$t.createClass.init SessionLogin.js:18
derived appery.js:161
(anonymous function)
Do you perhaps know what is causing this?
Thanks in advance.
Hello,
Just a quick suggestion.
It looks like the project is using the latest version of the Progress JavaScript files. However, the Session Service that it is using has the format of an old version.
Did you upgrade the project in the Mobile App Builder to use the latest features?
Did you update the Session Service to match the new version? (See document adding Session Service and Login Page to Upgraded Mobile Apps.)
Before upgrading a project, you can do a backup and/or create a project version.
The following links have information on upgrading a project:
docs.mobile.rollbase.com/.../upgrading-an-existing-mobile-app
community.progress.com/.../2186.openedge-mobile-white-papers.aspx
If you still have issues after looking at this, you could share the project with me or Technical Support and we can take a look.
I hope this helps.
P.S.:
Looking at line 671, shows a reference to this.loginBase.__requestOptions.service.serviceSettings.
The message indicates that "service" is undefined.
Do you see any more error messages in the JavaScript Console?
Meyrick Flanegan |
Developer - Managed Services |
Email: mflanegan@elcb.co.za |
|
ELCB Information Services (Pty) Ltd |
Customer Service Email elcb@elcb.co.za · www.elcb.co.za |
E A S T L O N D O N Tel: +27(43) 704 0700 Fax: +27(43) 704 0701 |
J O H A N N E S B U R G Tel: +27(11) 879 6179 Fax: +27(11) 454 0384 |
P O R T E L I Z A B E T H Tel: +27(41) 373 0529 Fax: +27(86) 650 0135 |
Hello,
Just a quick suggestion.
It looks like the project is using the latest version of the Progress JavaScript files. However, the Session Service that it is using has the format of an old version.
Did you upgrade the project in the Mobile App Builder to use the latest features?
Did you update the Session Service to match the new version? (See document adding Session Service and Login Page to Upgraded Mobile Apps.)
Before upgrading a project, you can do a backup and/or create a project version.
The following links have information on upgrading a project:
docs.mobile.rollbase.com/.../upgrading-an-existing-mobile-app
community.progress.com/.../2186.openedge-mobile-white-papers.aspx
If you still have issues after looking at this, you could share the project with me or Technical Support and we can take a look.
I hope this helps.
Flag this post as spam/abuse.
Hello Meyrick,
Thank you for your time to look at this issue together. I am glad that the project worked just fine after adding the Session Service and calling the new services.
Here is a summary of the issue and its resolution in case that others run into this issue.
The Mobile project was created in Mobile App Builder 9.0 and contained the MobileService_Login, MobileService_Logout and MobileService_Settings entries in Services. The implementation code for these services used SessionLogin.js and SessionLogout.js (the code for these services was inline).
When the project was upgraded to use the latest features, a new version of SessionLogin.js and SessionLogout.js was provided (the code for these services use a wrapper code that calls an object with the implementation).
However, since the old services were still in used, it was trying to use the new version of the code and would fail with the message:
Uncaught TypeError: Cannot read property 'serviceSettings' of undefined progress.mobile.3.0.js:671
To resolve this issue you would either need the following:
1) Old version of the code.
2) Add a new Session Service.
Prior to the upgrade, you could have renamed the old implementation files so that the old services would continue working.
We have added a note mentioning about this to the upgrade steps:
docs.mobile.rollbase.com/.../upgrading-an-existing-mobile-app
Since the project was already upgrade the adding a new Session Service was the best approach.
To add a new Session Service you could do the following:
1) Add a new Session Service using New->Sesssion Service.
2) Use the upgrade steps "Adding Session Service and Login Page to Upgraded Mobile Apps".
These steps are now documented in the upgrade page and also in the wiki:
community.progress.com/.../2186.openedge-mobile-white-papers.aspx
Option #2, with the white paper, guides you through adding a new Session Service and Login page that can be used as examples.
Because you already had a LoginPage in your project it was easier to use that option #1 with your LoginPage and set the SessionService_Settings (Catalog URIs and Service URI) and usage of the Session Service, Login Service and Logout Services.
The Session Service needs to be called first, then the Login and Logout Services need to be called (generally from a button), and call then the JSDO Service.
The document "Adding Session Service and Login Page to Upgraded Mobile Apps", mentioned above, talks about this.
The white paper on how to build a Mobile app from the Phone App template also talks about this:
community.progress.com/.../9823.aspx
When using the new implementation files, old MobileService_Login and MobileService_Logout are no longer need and would continue to throw the exception. These must be deleted.
Thank you and regards.