IBM ODM Test Suite Problemleri ve Çözümleri
05/10/2017
Ekim itibariyle işe kaldığım yerden devam ediyorum. Artık hem kendim için hem de bu işlerle uğraşanlar için karşılaştığım teknik problemleri ve çözümlerini yazmaya çalışacağım.
İlk olarak IBM ODM 8.9 versiyonunda kural seti testi gerçekleştirirken karşılaştığım hatalar ve çözümlerinden bahsetmek istiyorum.
- İlk problem test suite ile test dosyası hazırlarken test server kısmı boş geldi. Testleri çalıştıracağımız server kısmının dolu gelmesi gerekiyor. Yoksa test ve simülasyonları çalıştıramayız.
- http://<HOSTNAME>:<PORT>/teamserver adresinden ilgili kural uygulamasına girerek configure – manage server kısmından yeni bir server ekledim.
Server url http://<HOSTNAME>:<PORT>/DecisionRunner olmalı yoksa test suite kısmındaki server bölümünde adres gözükmeyecektir.
- Server problemi çözüldü, fakat bu kez de test konfigürasyonunu yapıp, testi çalıştırdığımda A problem has occurred in connecting to Rule Execution Server ‘Test Suite Server’. Contact your administrator. hatası ile karşılaştım.Hata logu ise aşağıdaki gibiydi,
[10/4/17 4:46:11:305 PDT] 00000117 WebCollaborat A SECJ0129E: Authorization failed for user odmadmin:defaultWIMFileBasedRealm while invoking GET on default_host:DecisionRunner/api, Authorization failed, Not granted any of the required roles: resAdministrators resDeployers [10/4/17 4:46:11:345 PDT] 00000162 IlrTestingUti W [Report – 2017-10-04_04-46-08] nullilog.rules.teamserver.model.IlrTestingException: HTTP error when contacting “/DecisionRunner/api”, HTTP status 403: Error 403: AuthorizationFailed at ilog.rules.teamserver.ejb.service.validation.IlrTestSuiteService.createDecisionRunnerClient(IlrTestSuiteService.java:553) at ilog.rules.teamserver.ejb.service.validation.IlrTestSuiteService.asynchronousPrepare(IlrTestSuiteService.java:211) at ilog.rules.teamserver.ejb.service.validation.PrepareArchiveThreadService.run(PrepareArchiveThreadService.java:56) at com.google.common.util.concurrent.AbstractExecutionThreadService$1$1.run(AbstractExecutionThreadService.java:48) at java.lang.Thread.run(Thread.java:785)Caused by: ilog.rules.res.util.http.IlrHttpConnectionException: HTTP error when contacting “/DecisionRunner/api”, HTTP status 403: Error 403: AuthorizationFailed
at ilog.rules.res.util.http.AuthenticationHandlerImpl.hasAccessGranted(AuthenticationHandlerImpl.java:121)
at ilog.rules.res.util.http.CredentialsHandler.hasAccessGranted(CredentialsHandler.java:100)
at ilog.rules.res.util.http.CredentialsHandler.authenticate(CredentialsHandler.java:78)
at ilog.rules.res.util.http.IlrHttpClient.doAuthenticate(IlrHttpClient.java:227)
at ilog.rules.res.util.http.IlrHttpClient.doAuthenticate(IlrHttpClient.java:245)
at com.ibm.rules.cdi.client.CDIClient.doAuthenticate(CDIClient.java:129)
at com.ibm.rules.cdi.client.CDIClientServiceFactory.createHTTPClient(CDIClientServiceFactory.java:153)
at com.ibm.rules.cdi.client.CDIClientServiceFactory.createHTTPClient(CDIClientServiceFactory.java:104)
at ilog.rules.teamserver.model.validation.ValidationHelper.createDecisionRunnerClient(ValidationHelper.java:75)
at ilog.rules.teamserver.ejb.service.validation.IlrTestSuiteService.createDecisionRunnerClient(IlrTestSuiteService.java:551)
… 4 more
- Bunun için de was admin console’a giderek decision validation service uygulamasında ilgili grupları odmadmin kullanıcısı ile bağlayarak yetki verdim.(Kaynak: http://www-01.ibm.com/support/docview.wss?uid=swg21578192)
https://<HOSTNAME>:<PORT>/ibm/console adresine girildikten sonra,- Applications altında-Websphere enterprise applications kısmında jrules-ssp uygulamasına tıkladım.
- Gelen ekranda Security role to user/group mapping ‘e tıkladım.
- Burada ilgili roller olan resAdministrators ve resDeployers ekrana gelecektir. Grupları seçtim, üstte bulunan Map Users butonuna tıkladım.
- Gelen ekranda ilgili kullanıcıyı(bizde odmadmin idi) seçilerek yetki verdim.
- Yetkileri verdikten sonra jrules-ssp uygulamasını kapatıp açtım.
Bu işlemi de yaptıktan sonra test ve simülasyon kısımları server üzerinde çalışır hale geldi.