Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера Записки Oracle-ойда/Записи в блоге |
Записки Oracle-ойда
Голосов: 1 Адрес блога: http://stan1slav.blogspot.com/ Добавлен: 2011-07-16 14:20:30 блограйдером stan1slav Принадлежит блограйдеру stan1slav |
|
Основные новинки сервера приложений Weblogic 12c, 11g, 10gR3, 10 и 9
2012-11-12 10:04:00 (читать в оригинале)Хорошая презентация (взял здесь) об основных features сервера приложений Weblogic появившихся начиная с 9-ой версии.
Проблема с сохранением изменений в Oracle SQL Developer
2012-11-01 22:00:00 (читать в оригинале)Проблема:
При сохранить изменения в таблице через Oracle SQL Developer получается ошибка:
One error saving changes to table "SCHEMA"."TABLENAME":
Row 1: Data got commited in another/same session, cannot update row.
Вариант решения:- В SQL Developer перейти в меню "Tools"->"Preferences":
- В настройках "Database"->"Object Viewer" убрать галку "Use ORA_ROWSCN for DataEditor":
Ошибка "java.lang.UnsupportedOperationException: Remote JDBC disabled" и варианты её решения
2012-10-22 15:42:00 (читать в оригинале)Ошибка:
При попытке удалённого доступа к DataSource-у Weblogic-сервера генерируется следующая ошибка:
java.lang.UnsupportedOperationException: Remote JDBC disabled
at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
at weblogic.jdbc.common.internal.RmiDataSource_1036_WLStub.getConnection(Unknown Source)
at oracle.integration.platform.blocks.event.saq.SAQRemoteBusinessEventConnection.createConnection(SAQRemoteBusinessEventConnection.java:122)
at oracle.integration.platform.blocks.event.saq.SAQRemoteBusinessEventConnection.enqueueEvent(SAQRemoteBusinessEventConnection.java:67)
at oracle.integration.platform.blocks.event.saq.SAQRemoteBusinessEventConnection.publishEvent(SAQRemoteBusinessEventConnection.java:54)
...
Caused by: java.lang.UnsupportedOperationException: Remote JDBC disabled
at weblogic.jdbc.common.internal.JDBCServerHelperImpl.<clinit>(JDBCServerHelperImpl.java:50)
at weblogic.jdbc.common.internal.JDBCService.initialize(JDBCService.java:91)
at weblogic.jdbc.common.internal.JDBCService.start(JDBCService.java:138)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Причина:Удалённый доступ к JDBC отключен в Weblogic Server.
Варианты решения:
Первый вариант:
- Перейти в директорию домена. Перейти в поддиректорию bin и изменить файл setDomainEnv.sh
- Найти свойство WLS_JDBC_REMOTE_ENABLED и изменить его значение с false на true:
...
WLS_JDBC_REMOTE_ENABLED="-Dweblogic.jdbc.remoteEnabled=true"
export WLS_JDBC_REMOTE_ENABLED
... - Перестартовать все Managed-сервера домена.
- Установить при запуске сервера системное свойство (как сделать см.здесь):
-Dweblogic.jdbc.remoteEnabled=true
Публикация события в EDN из Java
2012-10-07 13:22:00 (читать в оригинале)Рассмотрим пример публикации события в EDN из Java для AQ и JMS на примере события:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<definitions xmlns="http://schemas.oracle.com/events/edl" targetNamespace="http://schemas.oracle.com/events/edl/TestEvent">
<schema-import namespace="http://nl.xenta/events" location="xsd/TestEvent.xsd"/>
<event-definition name="EventElement">
<content xmlns:ns0="http://nl.xenta/events" element="ns0:TestEvent"/>
</event-definition>
</definitions>
По-умолчанию используется механизм AQ, но можно настроить и с использованием JMS (см. 41.3.6 How to Configure JMS-based EDN Implementations) Класс реализующий отправку события:
import oracle.fabric.blocks.event.BusinessEventConnection;
import oracle.fabric.blocks.event.BusinessEventConnectionFactory;
import oracle.integration.platform.blocks.event.BusinessEventBuilder;
import oracle.integration.platform.blocks.event.jms.JmsRemoteBusinessEventConnectionFactory;
import oracle.integration.platform.blocks.event.saq.SAQRemoteBusinessEventConnectionFactory;
import oracle.soa.common.util.XMLUtil;
import org.w3c.dom.Element;
import java.util.Date;
import java.util.Properties;
import javax.jms.Queue;
import javax.jms.QueueConnectionFactory;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import javax.transaction.UserTransaction;
import javax.xml.namespace.QName;
public class EdnUtils {
private static final String EDN_JMS_CONNECTION_FACTORY_NAME = "jms/fabric/EDNConnectionFactory";
private static final String EDN_JMS_XA_CONNECTION_FACTORY_NAME = "jms/fabric/xaEDNConnectionFactory";
private static final String EDN_QUEUE_NAME = "jms/fabric/EDNQueue";
public static void main(String[] args) {
Properties props = new Properties();
props.put(Context.PROVIDER_URL, "t3://127.0.0.1:8001");
props.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
props.put(Context.SECURITY_PRINCIPAL, "weblogic");
props.put(Context.SECURITY_CREDENTIALS, "welcome1");
try{
String eventName = "EventElement";
String eventNamespace = "http://schemas.oracle.com/events/edl/TestEvent";
String eventBodyStr = "<TestEvent xmlns=\"http://nl.xenta/events\">\n"
+ "<action>action from java</action> \n"
+ "<description>description at [" + new Date() + "]</description> \n"
+ "</TestEvent>";
Element eventBody = XMLUtil.parseDocumentFromXMLString(eventBodyStr.toString()).getDocumentElement();
InitialContext context = new InitialContext(props);
EdnUtils.publishEvent(context, false, eventName, eventNamespace, eventBody);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void publishEvent(InitialContext context, boolean isJmsEdnMode, String eventName,
String eventNamespace, Element eventBody) throws NamingException {
BusinessEventConnectionFactory factory = null;
UserTransaction userTransaction =
(UserTransaction) context.lookup("javax.transaction.UserTransaction");
if (!isJmsEdnMode) {
DataSource ds = (DataSource) context.lookup("jdbc/EDNDataSource");
DataSource localTxDs = (DataSource) context.lookup("jdbc/EDNLocalTxDataSource");
factory = new SAQRemoteBusinessEventConnectionFactory(ds, localTxDs, userTransaction);
} else {
QueueConnectionFactory queueConnectionFactory =
((QueueConnectionFactory) context.lookup(EDN_JMS_CONNECTION_FACTORY_NAME));
QueueConnectionFactory xaQueueConnectionFactory =
((QueueConnectionFactory) context.lookup(EDN_JMS_XA_CONNECTION_FACTORY_NAME));
Queue jmsQueue = ((Queue) context.lookup(EDN_QUEUE_NAME));
factory = new JmsRemoteBusinessEventConnectionFactory(queueConnectionFactory, xaQueueConnectionFactory,
jmsQueue, userTransaction);
}
BusinessEventConnection conn = factory.createBusinessEventConnection();
BusinessEventBuilder builder = BusinessEventBuilder.newInstance();
builder.setEventName(new QName(eventNamespace, eventName));
builder.setBody(eventBody);
conn.publishEvent(builder.createEvent(), 3);
conn.close();
}
}
Для сборки и запуска примера из JDeveloper потребуются следующие библиотеки: Данное приложение-пример для JDeveloper содержащее два проекта (здесь):
- EventToFile - композит который при получении события пишет в файл на файловой системе, так же через него можно отправить событие;
- PublishEventFromJava - проект содержащий данный пример.
Тренинги по Oracle Unified Method
2012-09-25 14:08:00 (читать в оригинале)Тренинги по Oracle Unified Method доступны на Oracle Learning Library.
На момент написания статьи доступно два уровня OUM:
- Level 1 - Overview and Awareness
- Level 2 - Implement Focus Area Overview
Полезные ссылки:
- Официальный блог здесь
- Информация об сертификации Oracle Unified Method 5 Essentials (1Z0-568) здесь
Категория «Священники»
Взлеты Топ 5
+4 |
68 |
Позже,чем кажется |
+1 |
2 |
священник Стефан Красовицкий |
|
|
|
|
|
|
|
|
|
Падения Топ 5
Популярные за сутки
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.