IBM Worklight 6.0 - Смешанные номера портов после включения аутентификации при входе в консоль?

Желая пройти аутентификацию Worklight Console, я следовал инструкциям информационного центра по этой ссылке по адресу информационный центр. Кажется, работает на первый взгляд, так как вход в консоль предлагает форму входа в систему.

Перейдя по URL-адресу консоли по адресу http://192.168.168.154:9080/finance/console/#catalog, вы сразу же откроете страницу входа. Все идет нормально.

После ввода правильного имени пользователя/пароля (оба определены в worklight.properties) страница входа перенаправляется на консоль Worklight через порт 10080 и не загружает страницу.

Не удается подключиться Firefox не может установить соединение с сервером по адресу 192.168.168.154:10080.

Как вы можете прочитать, он пытается подключиться к http://192.168.168.154:10080/finance/console. Я думаю, этого не должно произойти, так как порт 10080 не был настроен.

Я понятия не имею, почему он перенаправляется на этот порт. Я искал в файлах конфигурации 10080 и не смог найти на него ссылки. Я думаю, что каким-то образом WL получает этот 10080 по умолчанию, поскольку это порт, используемый для разработки.

Вот фрагменты файлов, которые я использую для включения консоли входа:

worklight.properties:

#publicWorkLightHostname=localhost
# http or https
#publicWorkLightProtocol=http
# For default port leave empty
#publicWorkLightPort=10080  <-- it is commented out

console.username=finance
console.password=finance

authenticationConfig.xml

 <staticResources>
    <resource id="worklightConsole" securityTest="WorklightConsole">
            <urlPatterns>/console*</urlPatterns>
    </resource> 
    ....
</staticResources>

 <securityTests>

        <customSecurityTest name="WorklightConsole">
            <test realm="WorklightConsole" isInternalUserID="true"/>
        </customSecurityTest>
  ...
</securityTests>

сервер.xml

   <httpEndpoint id="defaultHttpEndpoint"
                  host="*"
                  httpPort="9080"
                  httpsPort="9443" >
        <tcpOptions soReuseAddr="true"/>
    </httpEndpoint>
    <!-- Declare the JNDI properties for the IBM Worklight Console. -->
    <jndiEntry jndiName="worklight/publicWorkLightProtocol" value='"http"'/>
    <jndiEntry jndiName="worklight/publicWorkLightPort" value='"9080"'/>
    <jndiEntry jndiName="worklight/serverSessionTimeout" value='"10"'/>

Любая идея о том, как решить эту проблему несоответствия портов? Env - это WL 6.0 на Liberty

P.S: Позже мы планируем вместо этого использовать LDAP. На данный момент достаточно иметь имя пользователя/пароль в свойствах.


person GDM    schedule 01.10.2013    source источник


Ответы (1)


В worklight.properties раскомментируйте свойство #publicWorkLightPort=10080 и измените его на 9080.

worklight.properties является частью файла .war проекта Worklight, который развертывается на сервере приложений; сервер приложений может иметь свой собственный номер порта, установленный в server.xml, но .war (проект) имеет некоторые свои собственные свойства.

Во время тестирования я столкнулся с той же проблемой, но после раскомментирования и изменения значения порта в worklight.properties перенаправление работало правильно после входа в систему.

person Idan Adar    schedule 01.10.2013
comment
ок, попробую. В worlight.properties есть комментарий, который меня смутил. Это: # В производственном режиме эти свойства являются обязательными - должны быть переопределены записями jndi Что является обязательным? Те, что в свойствах, или jndi? - person GDM; 02.10.2013