Мы разрабатываем приложение MobileFirst Hybrid. Мы реализовали механизм шифрования. Весь запрос от мобильного клиента зашифровывается и отправляется на сервер, а в адаптере рабочего света запрос реплицируется с использованием RSA. Для этого процесса дешифрования я использовал класс Java, который будет выполнять процесс дешифрования. Из моего метода HTTP-адаптера я напрямую вызываю свой Java-класс, передавая свой запрос в качестве параметра следующим образом: function decryptRequest(param){ var result = com.myapp.Decrypt.decrypt(param); WL.Logger.error("result "+result); return { result:result }; }
не удалось вызвать класс java из HTTP-адаптера на сервере Worklight Liberty
Вышеприведенная вещь отлично работает на моем автономном сервере рабочего света (на моем рабочем сервере рабочего стола). Проблема заключается в том, когда я положил класс Java на моем профиле сервера Worklight Liberty (который мой UAT коробка) Я получаю сообщение об ошибке
[ERROR ] FWLSE0099E: An error occurred while invoking procedure [project MYApp]BusinessAdapter/parseReqestFWLSE0100E: parameters: [project MYApp] TypeError: Cannot call property decrypt in object [JavaPackage com.myapp.Decrypt]. It is not a function, it is "object".
У меня есть класс Java (на Worklight студии) под сервер/Java/ком/MyApp/дешифрования. Когда я принимаю MYApp.war и проверяю, что файл войны имеет мой класс java «Расшифровать» в разделе «MYApp.war \ WEB-INF \ classes \ com \ myapp \ Decrypt.class». Я обновил файл MYApp.war на моем рабочем сервере Liberty (мой сервер UAT), но даже тогда я получаю вышеуказанную ошибку. Может кто-нибудь, пожалуйста, скажите мне, что я пропустил все, что нужно сделать. Должен ли я сделать что-нибудь еще, чтобы заставить HTTP-адаптер вызывать метод класса Java Decrypt.
Любая помощь была бы принята с благодарностью. Пожалуйста, помогите решить эту проблему, так как теперь она стала пробной пробкой для моего тестирования фазы UAT.
Заранее спасибо
Можете ли вы поделиться фрагментом кода Java-кода? –