16 августа 2012 г.

Обновление Siebel

При обновлении Siebel до версии 8.0.0.12 и выше при запуске Siebel получил ошибку
Unable to get the seed from binary file.

Для исправления запустите утилиту seedgeneratorutil, сформируйте файл и добавьте ссылку на этот файл в eapps.cfg


20 июля 2012 г.

Получение прав администратора в Mantis

Как получить права администратора в системе баг-трекинга Mantis используя sql:


  • mysql.exe -uroot -proot
  • use mantis;
  • select id,username,access_level from mantis_user_table where username like <ВАШ ЛОГИН>;
  • update mantis_user_table set access_level=90 where id=<ВАШ ID>;





1 июля 2012 г.

Установка Siebel CRM c демо-базой

Установил Siebel версии 8.0.0.13 c демонстрационной базой данных.

При запуске Siebel получил сообщение:
We detected an Error which may have occurred for one or more of the following reasons:The Data Quality Universal Connector feature is not licensed.(SBL-APS-00149)

Лечится только исправлением в репозитории и перекомпиляции SRF файла

Вот инструкция:



  • Log in to Siebel Tools 


  • On the Object Explorer click Flat Tab 


  • Click Applet User Prop 


  • Query for "DeDuplication Results Applet" 


  • Lock all the retrieved user properties 


  • Inactivate all the user properties from the query results by setting the inactive flag to TRUE. 


  • Compile all the changed objects by clicking Tools > Compile Projects > Locked Projects 


  • Choose the Siebel Server SRF file 


  • Click Compile. 


  • Restart the Siebel Application Server. 


28 февраля 2012 г.

Вызов WEB-сервисов Siebel из Oracle Weblogic сервера. Часть 2.


Что бы вызвать WEB-сервис созданный в Siebel из сторонней программы, заголовок SOAP запроса должен содержать текст:
Что бы сформировать такой заголовок на Weblogic сервере существует официальный вариант, описанный в документации:
1) импортируем WSDL
2) редактируем WSDL, добавляем так называемое policy:
- в раздел definitions:
<< div="">
< div="">
< div="">

- и в раздел binding:


3) затем на этот wsdl создается объект proxy и на закладке policy заполняются необходимые данные.

К сожалению weblogic формирует немного другой заголовок, чем требуется для Siebel. Поэтому Siebel возвращает ошибку. Эта проблема описана в блоге:
http://jvzoggel.wordpress.com/2010/04/01/oracle-service-bus-and-siebel-usernametoken/
(частичный русский перевод: http://andrei-lobanov.blogspot.com/2010/06/oracle-service-bus-and-siebel-ws.html)

Для решения этой проблемы предлагается метод ручного заполнения заголовка, как и описано в блоге jvzoggel. Недостаток этого решения в хранении пароля в открытом виде в исходных текстах конфигурации. Далее описание данного способа решения:

1) WSDL файл не изменяем;

2) В Eclipse открываем конфигурацию и создаем новый каталог, например sequrity:

3) В этот каталог добавляем объект Service Account. Тип ресурса указываем=static. Указываем требуемый пароль:

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

4) Создаем на импортированный WSDL объекты типа business и proxy. Открываем proxy, переходим на закладку Message Flow и добавляем два объекта: Assign и Replace


Продолжение следует.


26 февраля 2012 г.

Вызов WEB-сервисов Siebel из Oracle Weblogic сервера

Допустим нам требуется вызвать WEB-сервис Siebel CRM. Для вызова будем использовать модуль Enterprise Service Bus входящий в состав Weblogic сервера.
Шаг 1. Заходим в Siebel и генерируем WSDL файл. Нужно посмотреть используется ли система безопасности в Siebel. Возможные варианты: 1) без пароля 2) простой текст. В первом случае проблем никаких не будет, создаем бизнес сервис и подключаем его в проект.

Во 2-м случае придется столкнуться с тем что в Siebel есть старый баг, который Oracle не собирается исправлять. Siebel отклоняет SOAP запросы, которые используют новые стандарты SOAP. Об этом далее:

Настройка security в oracle weblogic server



При установке weblogic сервера версии 10.3.5 по умолчанию не ставится надстройка Oracle WSM Policy manager. Конечно, если у Вас есть желание несколько раз переустановить рабочий домен weblogic сервера в поисках причин неработоспособности security в модулях OSB и SOA, то Вы можете не включать эту надстройку. В остальных случаях категорически советую включить этот модуль.

Даже если вы установите это дополнение, то после запуска процессов домена при попытке использовать авторизацию в Oracle Service Bus вы получите чудное сообщение:
default-keystore.jks OSB Security Failed to initialize the OWSM Credentials Manager.
Не пытайтесь понять почему это не работает, причина в том, что один файл не появляется после установки сервера.
Чтобы исправить, нужно создать файл с помощью утилиты keytool (нужна версия из каталога bin java):

cd /siebel/java/jdk1.6.0_30/bin
./keytool -genkeypair -keyalg RSA -alias orakey -keypass xxx -keystore default-keystore.jks -storepass xxx -validity 3600
What is your first and last name?
[Unknown]: weblogic
What is the name of your organizational unit?
[Unknown]: MTS
What is the name of your organization?
[Unknown]: MTS
What is the name of your City or Locality?
[Unknown]: Moscow
What is the name of your State or Province?
[Unknown]: RU

What is the two-letter country code for this unit?
[Unknown]: RU
Is CN=weblogic, OU=MTS, O=MTS, L=Moscow, ST=RU, C=RU correct?
[no]: yes

ls *.jks
default-keystore.jks
$ cp default-keystore.jks /siebel/Middleware/user_projects/domains/as2_domain/config/fmwconfig


После этого в EM weblogic сервера установите корректные параметры в меню Sequrity -> Sequrity provider configuration -> Keystore -> Configure

Полезные ссылки:
Oracle Support DocID 1266231.1
http://niallcblogs.blogspot.com/2010/07/osb-11g-and-wsm.html

7 июля 2010 г.

Отправка письма при появлении fdr файла

  В случае возникновении внутренней ошибки в Siebel сессия пользователя закрывается и появляется FDR-файл. Для отслеживания и диагностики файлов можно использовать такой скрипт:


mailto:mail=
path='/u01/siebel/siebsrvr/bin/'
log='/u01/fdr_processed.log'
cd $path
fdr=`ls *.fdr`
if [ $? != 0 ]; then
echo 'file does not exists, exit'
exit 1fi
#get the last fdr name
cd $path
fdr=`ls -lht *.fdr | head -1`
fdrName=`echo $fdr | awk '{print $9}'`
if [ -z "$fdrName" ]; then
exit 1
fi
#echo $fdrName
if [ ! -e "$log" ]; then
fdr_processed='1 2 3 4 5 6 7 8 9 10'
else
read fdr_processed <$log
fi
if [ -z "$fdr_processed" ]; then
fdr_processed='1 2 3 4 5 6 7 8 9 10'
fi
fdrProcessedName=`echo $fdr_processed |awk '{print $9}' `
if [ "$fdrName" != "$fdrProcessedName" ]; then
/usr/sbin/sendmail -t <<EOF
To: $mail
From: siebel_team@mail.ru
Subject: FDR on `hostname`
На `hostname` появился новый FDR:
`ls -lh $path$fdrName | awk '{print $9,$6,$7,$8,$5}'`
Siebel Team Administrators
EOF
echo "Mail sended"
fi
echo $fdr > $log
cd ~/