Production MobileFirst 7 Server upgrade from Worklight 6.2, Adapter call not working - upgrade

We have a MobileFirst application that worked with Worklight 6.2 server - production also. We are using a http adapter: <connectionPolicy xsi:type="http:HTTPConnectionPolicyType">
Currently we are changing the production server to 7.0.0. On Development Server we could test our application and all the functionalities were OK. We'we created the .war with the production server on build configuration and uploaded together with the android .wlapp . Now we receive 404 when the application tries to call any adapter function on production server. invokeProcedure onFailure returns UNEXPECTED_ERROR. This is with:
Server version: 7.0.0.00.20150312-0731
Project WAR version: 7.0.0.00.20150402-2001
Adapter name: XXXXX. Version: 7.0.0.00.20150402-2001
Application: XXXXX-android-0.9.7, Version: 7.0.0.00.20150402-2001
We have no security enabled in the application.
Is there something that must be enabled on Server in order to allow old type adapters call?
When we've tested with upgraded MobileFirst Development Studio 7.0.0.00.20150430 as development platform - same server version, and we got same 404 (Context not found), but there tries to connect with authorization/v1/clients/instance instead of /apps/services/api/XXXXX/android/query
Should a Server upgrade solve this problem? We've noticed that there are updates available.
The Server is on a https connection, but was same on WL 6.2.

By the description in the comments and the supplied messages.log, it is clear that you are attempting to use Application Authenticity Protection.
This feature worked in a certain way in v6.2 and it works in a different way in v6.3 and above.
From the comments it appears you are only adding the publickSigningKey - this is no longer enough.
See the updated Application Authenticity Protection tutorial for steps to follow: https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-7-0/authentication-security/application-authenticity-protection/
General steps to follow:
Setup authenticationConfig.xml with the security test
Add the security test to the environment node in application-descriptor.xml
Add the publicSigningKey to the <publicSigningKey> element
Add the application package name <packageName> element
I believe you are missing step 4.
Note that you also able to now enable the Extended Authenticity mode; follow the instructions in the tutorial.
Note about step 3: obviously the same keystore used to generate the publicSigningKey must be used when you export the signed .apk file... otherwise there will be a mismatch and the authenticity challenge will fail.
In your authenticationConfig.xml, make sure you have the securityTest available (= not commented out like in the file you've supplied in the comments below.
In your application-descriptor.xml, you are missing the securityTest attribute in the Android environment element: <android version="0.9.9"> change to <android version="0.9.9" securityTest="customTests">

Related

Upgrade .NET Framework 4.5 to 4.8 - Web Application Returning 404 Error

I have attempting to upgrade a web application that uses .NET Framework 4.5 to 4.8.
The application runs on a server that both compiles and runs the application, so I installed the .NET Framework 4.8 Developer Pack. I restarted the server and it has booted up successfully.
TeamCity successfully built and compiled the application and Octopus successfully deployed as per usual. However, when I now attempt to access the website, I get a 404 at the login page.
Looking at the folder structure, the file is definitely there. The code builds and runs successfully on my local machine, allowing me to login and perform any function on the system.
Is there something that I have missed running or doing on the server to get this to work?
Edit: Request for IIS Configuration
The configuration of this hasn't changed since I've upgrade the .NET Framework but here is what I have. If this isn't the configuration that is being asked about, please let me know.
Bindings
Everything else has been left as the default values.

Not able to host Xero oAuth20 dll in Azure Server

I have implemented Xero oAuth20 in Asp.Net Web forms using Xero.NetStandard.OAuth2 -Version 0.4.0 version from Nuget package manager.
This is working fine in my local, how ever if I try to deploy solution in Azure server, the publish is getting failed.
Please help to fix this issue.
This is the error
"Your role instances have recycled a number of times during an update or upgrade operation. This indicates that the new version of your service or the configuration settings you provided when configuring the service prevent the role instances from running. Verify your code does not throw unhandled exceptions and that your configuration settings are correct and then start another update or upgrade operation."

HTTP Error 500.19 - Internal Server Error web config .net core web api

Detailed Error Information:
Module:
IIS Web Core
Notification:
BeginRequest
Handler:
Not yet determined
Error Code:
0x8007000d
Config Error:
Config File:
\?\C:\inetpub\wwwroot\webapi\web.config
can you help me?
I had similar challenge with an aspnet.core web application. I took these steps
1. I installed the Windows Server Hosting (.exe) from https://www.microsoft.com/net/download/windows
2. I granted full permission to the application directory
Hope this solved your problem
I had this same error, but different fix in case it helps someone. I thought sure that I had installed the .NET Core Runtime on the server. Turns out it wasn't actually there. Another sign that it's not installed is that in IIS Administrator, at the machine node, the Modules panel does not have the AspNetCoreModule registered (and indeed there was no aspnetcore.dll at \System32\inetsrv). Once I installed the .NET Core Runtime and restarted IIS, the application worked.
Another tip: installing the .NET Core SDK does not install the runtime components, including for IIS hosting. You must install specifically the Runtime to support apps on IIS.

MobileFirst authenticationConfig.xml 7.1 migration error on Security Access Manager sample project - how to resolve?

I'm working with IBM MobileFirst 7.1, and trying to get integration for ISAM working. So far I've been working with the sample application provided here, but I'm having issues with it when working with 7.1 MobileFirst client-side tools.
If I download and unzip the v3.5 integration package, and unzip the ISAMforMobileFirst test project, and I build it with the v7.0 CLI, it builds successfully. However, if I build it with the v7.1 CLI, I get an error like this:
Migrating project from version 7.0.0.00.20150211-0917 to version 7.1.0.00.20150807-0630.
[Error:
BUILD FAILED
/Applications/IBM/MobileFirst-CLI-7.1/mobilefirst-cli/node_modules/generator-worklight-server/lib/build.xml:497: com.worklight.upgrader.UpgradeEngineException: FWLPL0019E: Migrating the ISAMforMobileFirst project from version 7.0.0.00.20150211-0917 to version 7.1.0.00.20150807-0630 has failed because Cannot parse /Users/ferriera/Downloads/AmWorklightAdapter-3.5/sample/ISAMforMobileFirst/server/conf/authenticationConfig.xml
at com.worklight.upgrader.WLUpgradeEngine.upgradeProject(WLUpgradeEngine.java:271)
at com.worklight.upgrader.ant.UpgraderTask.execute(UpgraderTask.java:100)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
A colleague also sees this exact error in MobileFirst Studio 7.1 (in Eclipse) so I'm guessing it's not a CLI-specific error.
I would assume that support for something has changed in authenticationConfig.xml in 7.1, and this hasn't been reflected in the migrator.
A few questions:
Is ISAM integration supported in 7.1?
Whilst I realise the sample application isn't technically supported in 7.1, if/since ISAM integration is, in theory it should be feasible to make it work. What's changed in authenticationConfig.xml syntax?
Edit: looks like the failure happens due to the following: <parameter name="embedded-pki-bridge-ca-p12-file-path" value="<file-path>"/> and more specifically: <file-path>.
Change it to the actual file path, and it will not fail importing.
Nothing in the authenticationConfig.xml file is about ISAM really; it's all declarations of realms, login modules, security tests...
There is a clear failure, and a PMR should be opened.
As for a local workaround, I've attempted to remove segments in the file that I thought might trigger it, but did not succeed to find a pattern that causes it...

Glassfish: how to correctly deploy applications?

My setup is as following:
Production web server with Glassfish 3.1.1 wrapped into a windows service.
Developing environment with Netbeans 7.1 with the included Glassfish server.
I thought a valid way to deploy updates to production server was to copy the content of the Netbeans /build directory and it worked well many times.
Unfortunately I experienced a major problem, described in the link below, where new roles were not recognized because glassfish had cached data somewhere else.
Glassfish: how to investigate roles/groups problems
I checked the Glassfish configuration a lot but couldn't find any parameters like 'rebuild cached data at the server start'. So my question is how can I deploy updates in my production server being sure that my changes will not be invalidated by pre-compiled cached data ?
Thanks
Filippo