JCA Connector: when is setLogWriter called by OC4J?

Does anybody know when OC4J calls the setLogWriter method of the ManagedConnectionFactory/ManagedConnection?
Thanks, Robert

And how to enable logging?
I know only the properties transaction.log, datasource.verbose, jdbc.debug, jdbc.connection.debug that can be set as system properties while starting OC4J (e.g. java -Ddatasource.verbose=true -jar oc4j.jar).
Are there more properties for turning on JCA Connector Adapter debugging/logging?
If yes, how can I set these properties for the OC4J embedded in JDeveloper?
Thanks,
Robert

Similar Messages

  • How do I run a JCA adapter when I am calling it from an EJB?

    How do I run a JCA adapter when I am calling it from an EJB? Do I need to create an EJB client and place it in a Client container? If my EJB and JCA adapter are deployed is there a way to call my EJB from the command line?
    Mike

    Hi. When you look at the code I provided for you in other thread you will see that connecting to adapter is done through JNDI lookup. The creation of the adapter is done in your J2EE server. Here is some code for you where you can find mapping from code to ejb-jar and orion-ejb-jar.
    ejb-jar.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
    version="2.1">
    <!--
    This file declares the interface (needs/promises) of the message-driven bean.
    The MDB requires:
    - a JMS queue (to receive messages from the client),
    - a JMS exception queue (to send undeliverable messages back to the source), and
    - a connection factory (to communicate with a JMS resource provider).
    Note that communication with the resource provider may be (and for this
    application is) via a JMS Connector rather than direct.
    -->
    <display-name>JMS Consume MDB - opp-ifs</display-name>
    <enterprise-beans>
    <entity>
    <description>Entity Bean ( BMP )</description>
    <display-name>EBEjbMecomsIFS</display-name>
    <ejb-name>EBEjbMecomsIFS</ejb-name>
    <local-home>EBEjbMecomsIFSLocalHome</local-home>
    <local>EBEjbMecomsIFSLocal</local>
    <ejb-class>EBEjbMecomsIFSBean</ejb-class>
    <persistence-type>Bean</persistence-type>
    <prim-key-class>java.lang.Long</prim-key-class>
    <reentrant>false</reentrant>
    <service-ref>
    <service-ref-name>service/interceptor</service-ref-name>
    <service-interface>javax.xml.rpc.Service</service-interface>
    <wsdl-file>META-INF/wsdl/MHS5_Jms_In_RS.wsdl</wsdl-file>
    <service-qname xmlns:ns="http://oracle.com/esb/namespaces/PilotOWSM_MustHavesScenario5">ns:ESB_MHS5_Jms_In_RS_Service</service-qname>
    </service-ref>
    </entity>
    <message-driven>
    <display-name>JMS Consume MDB - MDB</display-name>
    <ejb-name>MDBEjbMecomsIFS</ejb-name>
    <!-- name of bean in deployment descriptor (including orion-ejb-jar.xml file) -->
    <ejb-class>MDBEjbMecomsIFSBean</ejb-class>
    <!-- bean's fully qualified Java class name -->
    <messaging-type>javax.jms.MessageListener</messaging-type>
    <transaction-type>Container</transaction-type>
    <!-- allow incoming messages to be included in transactions -->
    <!-- The ejb requires a connection factory to access an external resource (JMS). -->
    <ejb-local-ref>
    <ejb-ref-name>ejb/local/EBEjbopp_ifs</ejb-ref-name>
    <ejb-ref-type>Entity</ejb-ref-type>
    <local-home>EBEjbMecomsIFSLocalHome</local-home>
    <local>EBEjbMecomsIFSLocal</local>
    <ejb-link>EBEjbMecomsIFS</ejb-link>
    </ejb-local-ref>
    <resource-ref>
    <!-- The resource's connection factory must be accessible at jndi location "java:comp/env/jms/QueueConnectionFactory". -->
    <res-ref-name>jms/QueueConnectionFactory</res-ref-name>
    <!-- The resource's connection factory must implement the "javax.jms.ConnectionFactory" interface. -->
    <res-type>javax.jms.ConnectionFactory</res-type>
    <!-- container managed authorization -->
    <res-auth>Container</res-auth>
    </resource-ref>
    </message-driven>
    </enterprise-beans>
    <assembly-descriptor>
    <!--
    Declare that a global transaction is required when the onMessage method of the ejb named
    "MDBEjbName" is called. This will cause the app server to automatically initiate a
    global (XA) transaction before calling onMessage (actually, before even receiving the JMS
    message that triggers onMessage) and end the transaction after onMessage returns. The
    JMS Connector will automatically rollback the transaction if onMessage throws an
    exception. onMessage may also set the transaction to be "rollback only".
    Participating in global transactions requires that the connection factory provided in the
    activation spec (see the ConnectionFactoryJndiName property earlier in this file) must be
    XA-capable (it must implement the javax.jms.XAConnectionFactory interface).
    If this declaration is ommitted, then onMethod will not be part of any global
    transaction. In that case the connection factory provided in the activation spec must
    implement the javax.jms.ConnectionFactory interface.
    -->
    <container-transaction>
    <method>
    <ejb-name>MDBEjbMecomsIFS</ejb-name>
    <method-name>onMessage</method-name>
    </method>
    <trans-attribute>Required</trans-attribute>
    </container-transaction>
    <container-transaction>
    <method>
    <ejb-name>EBEjbMecomsIFS</ejb-name>
    <method-name>*</method-name>
    </method>
    <trans-attribute>Supports</trans-attribute>
    </container-transaction>
    </assembly-descriptor>
    </ejb-jar>
    orion-ejb-jar.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <orion-ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNameSpaceSchemaLocation="http://www.oracle.com/technology/oracleas/schema/orion-ejb-jar-10_0.xsd">
    <enterprise-beans>
    <entity-deployment name="EBEjbMecomsIFS">
    <service-ref-mapping name="service/interceptor">
    <wsdl-location>http://on-poc62.ontw.alfa.local:7777/event/PilotOWSM/MustHavesScenario5/MHS5_Jms_In_RS?wsdl</wsdl-location>
    <service-qname localpart="ESB_MHS5_Jms_In_RS_Service" namespaceURI="http://oracle.com/esb/namespaces/PilotOWSM_MustHavesScenario5"/>
    <port-info>
    <wsdl-port namespaceURI="http://oracle.com/esb/namespaces/PilotOWSM_MustHavesScenario5"
    localpart="__soap_MHS5_Jms_In_RS_execute_ppt"/>
    <service-endpoint-interface>javax.xml.rpc.Service</service-endpoint-interface>
    <call-property>
    <name>javax.xml.rpc.service.endpoint.address</name>
    <value>http://on-poc62.ontw.alfa.local:7777/event/PilotOWSM/MustHavesScenario5/MHS5_Jms_In_RS</value>
    </call-property>
    <call-property>
    <name>javax.xml.rpc.soap.http.soapaction.uri</name>
    <value>execute</value>
    </call-property>
    <call-property>
    <name>javax.xml.rpc.soap.http.soapaction.use</name>
    <value>true</value>
    </call-property>
    <call-property>
    <name>javax.xml.rpc.soap.operation.style</name>
    <value>document</value>
    </call-property>
    <runtime enabled="owsm">
    <owsm init-home="/oracle/product/SoaAs/10.1.3/owsm/config/interceptors/C0003002"
    init-file="confluent.properties"/>
    </runtime>
    </port-info>
    </service-ref-mapping>
    </entity-deployment>
    <message-driven-deployment name="MDBEjbMecomsIFS"
    resource-adapter="OEMSJMSDRAopp-ifs"
    enabled="true" max-instances="10">
    <!--
    The ejb requires a connection factory implementing the "javax.jms.XAConnectionFactory"
    interface to be accessible at jndi location "java:comp/env/jms/QueueConnectionFactory". (see ejb-jar.xml and ....)
    A suitable connection factory is already accessible at jndi location "OEMSJMSDRASubcontext/MyXACF" (see oc4j-ra.xml)
    -->
    <resource-ref-mapping location="OEMSJMSDRASubopp-ifs/MyXACF"
    name="jms/QueueConnectionFactory"/>
    <!-- don't misspell this or you'll get an RP CF which doesn't work -->
    <!-- Required activation-spec properties. -->
    <!--
    ConnectionFactoryJndiName (string, no default)
    This should be the JNDI location of an RA connection factory.
    The JMS Connector will use this connection factory to create the JMS
    connection it uses to receive messages for this MDB's onMessage. If the
    exception queue is enabled (see UseExceptionQueue), the JMS Connector will
    also use a connection created from this connection factory for the production
    of messages to the exception queue.
    This connection factory must be compatible with the message domain(s). (For
    example, if the MDB is receiving messages from a queue, the connection
    factory should implement javax.jms.[XA]QueueConnectionFactory or
    javx.jms.[XA]ConnectionFactory.)
    For XA/non-XA considerations, see the <container-transaction> comments later
    in this file.
    -->
    <config-property>
    <config-property-name>ConnectionFactoryJndiName</config-property-name>
    <config-property-value>OEMSJMSDRASubopp-ifs/MyXAQCF</config-property-value>
    </config-property>
    <!--
    DestinationName (string, no default)
    This is JNDI location of the queue or topic from which messages to be
    delivered to the MDB's onMessage method should be received.
    The JNDI locations for RA destinations are defined in the
    oc4j-connectors.xml file.
    -->
    <config-property>
    <config-property-name>DestinationName</config-property-name>
    <config-property-value>OEMSJMSDRASubopp-ifs/MyQ</config-property-value>
    </config-property>
    <!--
    DestinationType (string, no default)
    This must be set to the type of the destination named by the above
    "DestinationName" property.
    The EJB 2.1 spec states that this must be set to either javax.jms.Queue or
    javax.jms.Topic. OracleGJRA also allows it to be set to
    javax.jms.Destination (which works for both queues and topics).
    -->
    <config-property>
    <config-property-name>DestinationType</config-property-name>
    <config-property-value>javax.jms.Queue</config-property-value>
    </config-property>
    <!--
    Other activation-spec properties.
    The following activation-spec properties supported by OracleGJRA are optional
    except where otherwise noted:
    -->
    <!--
    ListenerThreadMaxPollInterval (milliseconds, 5000)
    Listener threads "poll" to see if there is a message waiting to be processed.
    The more frequently this polling is performed, the faster (on average) a given
    listener thread can respond to a new message. The price for frequent polling is
    overhead - the resource provider must process a receive request each time it is
    polled.
    Oracle's JMS Connector implementation applies an adaptive algorithm which
    uses shorter polling intervals (high polling rates) during periods of activity
    (once activity is noticed) and longer polling intervals (lower polling rates)
    during periods of inactivity. The ListenerThreadMaxPollInterval property places
    an upper limit on the polling interval used by this adaptive algorithm.
    -->
    <config-property>
    <config-property-name>ListenerThreadMaxPollInterval</config-property-name>
    <config-property-value>5000</config-property-value>
    </config-property>
    <!--
    AcknowledgeMode (string, default = Auto-acknowledge)
    This should be set to Auto-acknowledge or Dups-ok-acknowledge. This
    controls the quality-of-service provided by listener threads which
    consume messages and call the MDB's onMessage method.
    MessageSelector (string, default = no message filtering)
    This is the selector expression used to filter messages sent to the
    MDB's onMessage method. (I.e., this is used as the messageSelector for
    the JMS sessions created for the listener threads.)
    SubscriptionDurability (string, default = NonDurable)
    For topics this should be set to Durable or NonDurable. (This should
    not be set for queues.) This controls the durability of the topic
    consumer used by the listener thread. When SubscriptionDurability is
    set to Durable (and DestinationType is javax.jms.Topic or
    javax.jms.Destination), the SubscriptionName property is required.
    SubscriptionName (string, no default)
    This property is required when SubscriptionDurability is Durable (and
    DestinationType is javax.jms.Topic or javax.jms.Destination). (In all
    other cases it is ignored.) This is the name used when creating the
    durable subscriber used by the listener thread. For a given JMS server,
    a given subscription name should be assigned to at most one MDB (which
    must have most one listener thread).
    ClientId (string, no default)
    If set, connection(s) used by the listener threads will be set to use
    this client ID.
    TransactionTimeout (milliseconds, default = 300,000)
    This limits the amount of time that the JMS Connector will wait for a
    message to arrive before exiting the current transaction. The
    transaction manager limits the amount of time a transaction can last
    (see transaction-timeout in transaction-manager.xml).
    TransactionTimeout should be set such that the transaction manager will
    not timeout the transaction during the onMessage routine unless
    something is wrong. For example, If the transaction mananager timeout
    is set to 30 seconds, and the onMessage routine will never take more
    than 10 seconds unless something is wrong, then this property could be
    set to 20 seconds (20000 milliseconds).
    EndpointFailureRetryInterval (milliseconds, default = 60,000)
    If an endpoint can not be processed (due to the app server WorkManager
    not accepting new work), it will be scheduled to be retried this many
    milliseconds later.
    ReceiverThreads (integer, default = 1)
    This sets the maximum number of listener threads to create for this
    endpoint. For queues, using more than one thread may be useful in
    increasing the rate at which messages can be consumed. For topics this
    value should always be 1. (Each listener thread gets its own session
    and TopicSubscriber. For durable subscribers it would be an error to
    have more than one subscriber with the same subscription name. For
    nondurable subscribers having more than one thread will not help because
    more threads translates into more subscribers which translates into more
    copies of each message.) See also: ListenerThreadMinBusyDuration
    UseExceptionQueue (boolean, default = false)
    When "UseExceptionQueue" is true:
    - Messages that would otherwise be discarded are sent to the
    exception queue. (Currently the only case where this happens is
    when the max delivery count is exceeded. See MaxDeliveryCnt
    property.) Rather than sending the original message directly to
    the exception queue, the following procedure is used:
    o Create a new message of the same type.
    o Copy the properties and body from the original message to the
    new message.
    o If the headers were copied, sending the message to the
    exception queue would cause most of them to be lost
    (over-written by the resource-provider). So instead,
    translate headers in the original to properties in the copy,
    assigning each header obtained via "getJMS{Header}" to
    property "GJRA_CopyOfJMS{Header}". Since
    javax.jms.Destination is not a valid property type, translate
    destination headers into descriptive messages.
    (Currently this same service is not provided for JMSX*
    properties, most notably the JMSXDeliveryCount property.)
    o If some part of the copy process (above) or augmentation
    process (below) fails, do not abort. Attempt to complete the
    rest of the procedure. (For Bytes/Map/Stream message types,
    this can mean that part of the body is copied and the rest is
    not.)
    o If the copy process is 100% successful, add a boolean property
    called "GJRA_CopySuccessful" with the value "true".
    o Add a string property called "GJRA_DeliveryFailureReason" which
    indicates why the message was not delivered.
    o If the MDB onMessage method generated an exception immediately
    prior to the delivery failure, add a string property called
    "GJRA_onMessageExceptions" which contains exception information.
    o Send the resulting message to the exception queue.
    Note that only one attempt is made to send the message to the
    exception queue. Should this attempt fail, the message will
    be discarded without being placed in the exception queue.
    See IncludeBodiesInExceptionQueue property for potential variations
    of the above procedure.
    - The ExceptionQueueName property is required.
    - In addition to being used for the primary destination, the
    connection factory specified by the ConnectionFactoryJndiName
    property will also be used for the exception queue. If the primary
    destination (specified by the DestinationName property) is a topic,
    then the connection factory must support both queues and topics.
    (I.e., the <connectionfactory-interface> [see oc4j-ra.xml] for the
    given connection factory must be either javax.jms.ConnectionFactory
    or javax.jms.XAConnectionFactory.)
    ExceptionQueueName (string, no default)
    This is the JNDI location of the javax.jms.Queue object to use as the
    exception queue. (See UseExceptionQueue property for information about
    the use of the exception queue.) This property is required when
    UseExceptionQueue is true, and ignored when UseExceptionQueue is false.
    IncludeBodiesInExceptionQueue (boolean, default = true)
    This controls whether or not messages sent to the exception queue will
    include a message body. (See UseExceptionQueue property for information
    about the use of the exception queue.) If many messages are sent to the
    exception queue during normal operation and the message body is of no
    use in the exception queue, then this property may be set false to
    improve performance. This property is ignored when UseExceptionQueue is
    false. There are two cases where this property does not apply:
    - If the original message did not have a message body, then the
    message sent to the exception queue will not have one either.
    - If a copy of the original message can not be created for any
    reason, then the original may be sent to the exception queue
    instead. This may result in a message body being sent to the
    exception queue.
    MaxDeliveryCnt (integer, default = 5)
    If a message has the "JMSXDeliveryCount" property and the value of that
    property is greater than MaxDeliveryCnt, then the message will be
    discarded (and not sent to onMessage). If the exception queue is
    enabled (see UseExceptionQueue), a copy of the message will be sent to
    the exception queue. If MaxDeliveryCnt is set to 0, no messages will be
    discarded. (Note that when an MDB responds to a message by throwing an
    exception, the message is not considered delivered and it may be
    redelivered. If the MDB might always respond to a given message by
    throwing an exception, and MaxDeliveryCnt is set to 0 to prevent the
    message from ever being discarded, the result may be an MDB stuck in an
    "infinite loop" - failing to process the same message over and over
    again.)
    -->
    <config-property>
    <config-property-name>MaxDeliveryCnt</config-property-name>
    <config-property-value>0</config-property-value>
    </config-property>
    <!--
    LogLevel (string, no default)
    This controls the level of detail of messages logged by the JMS
    Connector. These messages are primarily intended for debugging the
    JMS Connector itself, but may also be useful when debugging issues
    related to the use of the JMS Connector. This property should not be
    set in production code. (It should only be set temporarily for
    debugging purposes - specific log messages and log levels may be and
    will be added/removed/modified in future versions of the JMS
    Connector.) Currently the allowed values are:
    ConnectionPool
    ConnectionOps
    TransactionalOps
    ListenerThreads
    INFO
    CONFIG
    FINE
    FINER
    FINEST
    SEVERE
    WARNING
    OFF
    ListenerThreadMaxIdleDuration (milliseconds, default = 300,000)
    This is how long a listener thread which is not receiving any messages
    will be kept around. (At least one listener thread will remain as long
    as the endpoint is active.)
    ListenerThreadMinBusyDuration (milliseconds, default = 10,000)
    If a listener thread has just received a message, has not been idle (had to
    wait for a new message to arrive) at any point during the past
    ListenerThreadMinBusyDuration milliseconds, and the current number of
    listener threads for this endpoint is less than ReceiverThreads, then
    (application server willing) an additional listener thread will be created.
    ResUser (string, default = null)
    ResPassword (string, default = null)
    These properties allow a user/password to be passed to the resource
    provider. When neither of these properties are set, connections used for
    this MDB's inbound message handling (as well as for exception queue
    handling, if enabled) are created using the no-argument version of the
    create*Connection method. When one or both of these properties are set,
    they are passed to the create*Connection method as the user/password
    arguments. (If only one property is not set, then 'null' is used for that
    particular create*Connection argument.) The ResPassword property supports
    the standard password indirection options (e.g., using "->joeuser" to
    represent the password of "joeuser").
    Note that the commas used in many of the above default values and examples are
    included here for readability but can not be used in the actual activation spec.
    (I.e., integer/milliseconds values in the activation spec must not include
    embedded commas.)
    -->
    </message-driven-deployment>
    </enterprise-beans>
    <assembly-descriptor>
    <default-method-access>
    <security-role-mapping name="&lt;default-ejb-caller-role>"
    impliesAll="true"/>
    </default-method-access>
    </assembly-descriptor>
    </orion-ejb-jar>

  • MQ Series JCA Connector run in Standalone OC4J but not in OAS on Linux

    Hi all,
    My problem is my application run in a Standalone OC4J in Windows and Linux and
    in a Oracle Application Server 10.1.3 in Windows but not run in a Oracle
    Application Server 10.1.3 on Linux why ?
    When i try deploy my application in Oracle Application Server on linux the
    error is throw:MQJMS2005: failed to create MQQueueManager for
    'ms009.queue.manager'
    In Standalone container in linux and windows and in a Oracle Application Server on Windows the deploy is fine.
    I use the same configurations in all containers and only in a OAS 10.1.3 on
    linux my app not run.
    I thank any suggestions!
    Message was edited by:
    Carlos Lacerda

    The JCA Connector to MQ Series run in Oracle Application Server on Linux ??
    Standalone is OK i test but in OAS this run ??
    The only difference entire OC4J configuration used in Standalone and OAS is in opmn.xml, that it is its necessary add a <enviroment> to found the MQ Libraries. Have another difference ??
    tanks

  • Issue with Third Party Adapter for custom JCA Connector in Oracle 11g.

    Hi,
    For a proof of concept, I have created my own JCA Connector. I have deployed this connector in Weblogic and it works as expected.
    Now I am trying to call the JCA Connecter from the SOA Bus. For this I have create a SCA Composite with a simple Web Service to expose the composite, a Third Party Adaptor to wrap the JCA Connector and a Mediator to wire the Web Service and the Third Party Adapter together. For the Third Party Adapter I have created both the needed *.wsdl and _3P.jca file my self. The problem is that I could not find any documentation about the _3P.jca file, and it looks like it that this file is new for 11g.
    After some puzzling and debugging I am able to deploy the SCA Composite with the Third Party Adapter. Though when I test the exposed Web Service with the Enterprise Manager I get errors and a stack trace. The problem is that the Record Converter I have created receives the default XMLRecord implementation (oracle.tip.adapter.fw.record.XMLRecordImpl) and not the implementation of the XMLRecord I have created my self.
    So the question is does anybody know how to configure the Third Party Adapter so that it will use my custom implemenation of the XMLRecord interface (oracle.tip.adapter.api.record.XMLRecord) instead of the default implementation of the XMLRecord (oracle.tip.adapter.fw.record.XMLRecordImpl).
    I would suspect that it should be configured in the _3P.jca file, though I don't know how. The following is the content of the current _3P.jca file I am using.
    <adapter-config name="DiskAdapter" adapter="Disk Adapter" wsdlLocation="JCADiskConnector.wsdl"
                    xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
      <record-converter className="com.osc.jcaadapter.convert.DiskRecordConverter"/>
      <connection-factory location="jndi/diskcf" adapterRef=""/>
      <endpoint-interaction operation="Send" portType="Send_ptt">
        <use-record-converter addonNamespace="http://somecomp.com/DiskAdapter"/>
        <interaction-spec className="com.osc.jcaadapter.impl.DiskInteractionSpecImpl">
          <property name="FunctionName" value="do-it"/>
        </interaction-spec>
      </endpoint-interaction>
    </adapter-config>So I am hoping that some one knows how you should configure the Third Party Adapter so it uses my own implementation of the XMLRecord interface.

    Hi Simeon,
    That is a good suggestion, and I would certainly try to do that if I was not making a proof of concept. It would solve my problem of not getting the sub class of the XMLRecord.
    Though for making my proof of concept I found a 10g example that used sub classes of the XMLRecord, and that is why I wanted to get the same example to work on 11g.
    The alternative of passing a parameter through with InteractionSpecs, is an interesting though can not solve this problem. I don't have a problem with the javax.resource.cci.Record, I can determine the implementation of that in the conversion class it self.
    The problem is the XMLRecord generated by the Oracle SOA Adapter Framework, some how I need a way to influence that to generate the correct implementation of the XMLRecord.
    So your post is certainly helpfull if I was not trying to get this specific problem to work :).
    But I am afraid that I will end up in implementing your sugestion.
    Regards
    Maikel.
    Edited by: M. Dierdorp on 13-aug-2010 6:34

  • How to clear JCA interface parameters in RFC call?

    hi all,
    this is my trouble:
    I have to call an RFC Function with JCA connector in an EP6 SP2. The connection it's ok and works well. But if i modify the interface parameters of the RFC function i must to reboot the portal for read the new interface.
    It's possible to read the new interface without restart the system.
    Thanks for all your helps!
    Gennaro

    hi all,
    this is my trouble:
    I have to call an RFC Function with JCA connector in an EP6 SP2. The connection it's ok and works well. But if i modify the interface parameters of the RFC function i must to reboot the portal for read the new interface.
    It's possible to read the new interface without restart the system.
    Thanks for all your helps!
    Gennaro

  • Error calling remote oc4j from within oc4j

    I'm running a session bean inside one instance of oc4j, and trying to make a remote rmi call to another oc4j instance, but running into a problem.
    When both the "client" side oc4j and server side oc4j are 10.1.3.0.0, everything proceeds smoothly. When the "client" side oc4j is upgraded to 10.1.3.3.0, I get the following error when doing the lookup:
    'TestBean' remote object not found during name lookup
    Caused by: javax.naming.NamingException: Disconnected: oracle.classloader.util.AnnotatedClassNotFoundException:
    Missing class: oracle.oc4j.rmi.interceptors.PropagatedIdentity
    Dependent class: com.evermind.io.ClassLoaderObjectInputStream
    Loader: oc4j:10.1.3
    Code-Source: /C:/java/oc4j/j2ee/home/lib/oc4j-internal.jar
    Configuration: <code-source> in META-INF/boot.xml in C:\java\oc4j\j2ee\home\oc4j.jar
    This load was initiated at testbean.root:0.0.0 using the Class.forName() method.
    The missing class is not available from any code-source or loader in the system.
    at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:64)
    Poking around, I found that the 10.1.3 oc4j doesn't contain any "PropagatedIdentity" class, but 10.1.3.3 does contain that class in the oc4j-internal.jar.
    Has anybody been seen this error or know what causes it? I assume that it should be possible to make a remote call from within one oc4j to another oc4j running a different version, but perhaps there's a conflict with the client classloading that prevents this.
    Any input is appreciated.
    Thanks,
    -- Dave

    Hi Stephen,
    Using a registry, for example UDDI [1], would be one solution. WLS has
    a complete UDDI implementation builtin [2] for this purpose.
    You are correct, you need to pass the service address location found in
    the <service> section of the WSDL.
    Hope this helps,
    Bruce
    [1]
    http://www.uddi.org/
    [2]
    http://e-docs.bea.com/wls/docs81/webserv/uddi.html
    Stephen Kurlow wrote:
    >
    I am not sure what I need to do to be able to call a remote webservice (runs on
    another weblogic server instance running on another machine in the same network)
    from within a webservice. I have 2 wsdl files and I have created webservice controls
    from them. I have successfully written code in the first webservice to instantiate
    the parms to the 2nd webservice and invoked the 2nd webservice when both webservices
    are deployed to the same weblogic server instance. So i can see the params being
    marshalled and unmarshalled in the test browser.
    Now how do I install the 2nd webservice on another weblogic server instance and
    instruct the 1st web service to call the 2nd webservice residing on another weblogic
    server instance? I presume some kind of lookup (url?) is needed and is it via
    what is contained in the wsdl file?
    Thanks in advance,
    Stephen Kurlow

  • Does the JCA connector have a timeout mechanism

              Hi,
              does anybody know if JCA connectors has got a timeout mechanism in Weblogic 6.1?
              I don't support transactions in my JCA connector.
              My point of view is that there should be some one because
              if I do a call from the SessionBean and the connection of the
              EIS hangs, the ejb blocks.
              Thanks
              Andre
              

    Hi Andre,
              in addition to add,
              Once you initiated the request/process, how much time to wait to get the
              result. If you are working with any EAI middleware vendors and developing
              adapters/connectors, then the timeout implementation and setting also be
              provided by them. so that you can directly use like below, the "execute"
              method in the implementation class of Interaction .
              This is a sample
              public boolean execute(InteractionSpec ispec, Record input, Record output)
              throws ResourceException
              //the below statement will do some process in the method "sendRequest",
              it may do some
              //repetitive process to get some values from your EIS and wait until
              the specified timeout
              //mentioned.
              m_connection.sendRequest(input, ispec.getExecutionTimeout());
              If you are not depends on any EAI vendor, Or if the API what you will use to
              connect EIS system and execute some thing and get result from EIS, if they
              are not providing a kind of waiting for some time to get result, then you
              may need to implement your own Timer Thread in the connector to wait for the
              specified timeout.
              Thanks
              Kumar
              "Björn Hamrin" <[email protected]> wrote in message
              news:[email protected]...
              > Andre Genser wrote:
              >
              > > Hi Björn,
              > >
              > > that means that I have to implement a Workerthread that is controlled
              > > by its father
              > > thread (SessionBean) context.
              > > Perhaps I should use the java.util.Timer but in my point of view there
              > > is a conflict
              > > because in ejb I may not start threads
              > > and I invoke the JCA connector inside an ejb.
              > >
              > > Andre
              >
              > You are of course right. A bean should not start a thread. This is
              > because resource management should be left to the EJB server. However
              > there might not be any other reasonable way to implement a timeout. As
              > long as you make sure that there is no more than one extra thread
              > started for the connector, not one per connection, you should be
              > alright. I have an extra background thread running in my connector with
              > no harmful effects.
              >
              > /Björn
              >
              

  • An error occurred when attempting to call the providers register function. (WWC-43134

    Dear All,
    While i'm trying to register my provider i got the following exception:
    An error occurred when attempting to call the providers register function. (WWC-43134)
    The following error occurred during the call to Web provider: oracle.webdb.provider.v2.utils.soap.SOAPException: Can't read deployment properties for service: UserRegister_Provider
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.locateService(Unknown Source)
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.processInternal(Unknown Source)
    at oracle.webdb.provider.v2.utils.soap.SOAPProcessor.process(Unknown Source)
    at oracle.webdb.provider.v2.adapter.SOAPServlet.doSOAPCall(Unknown Source)
    at oracle.webdb.provider.v2.adapter.SOAPServlet.service(Unknown Source)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:59)
    at oracle.security.jazn.oc4j.JAZNFilter.doFilter(JAZNFilter.java:283)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:523)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:269)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:735)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:151)
    at com.evermind.util.ThreadPoolThread.run(ThreadPoolThread.java:64)
    (WWC-43147)
    Any help will be appreciated.
    Regards,
    Mohammed Amin

    Mohammed,
    Make sure the file called UserRegister_Provider.properties does exist in your WEB-INF/deployment directory. The easiest way of creating it is: create a copy of the default.properties file, rename it, and specify the location of your provider definition file (usually provider.xml): definition=<providerlocation>
    Hope this helps.
    Peter

  • Data no longer available when SALV_WD_TABLE GET_MODEL called

    Hello
    I created a view that retrieves data from one table to select a row in the table and proceed to the second view but I get an error like this:
    Data no longer available when SALV_WD_TABLE GET_MODEL called
    I did check the mapping between my view and the componentcontroller
    thank you

    There are several possiblities for this error.
    1) In your table, is there any field name starts with Number?
    2) Is your application 2 level process?( i mean two views? based on alv another alv)
    and Please check the below note.
    1528254
    and below
    Data no longer available when SALV_WD_TABLE GET_MODEL called
    error while testing a sample web dynpro
    If youare binding dynamically check this thread
    Assigning data to Dynamic ALV
    Regards
    Srinivas
    Edited by: sanasrinivas on Dec 14, 2011 11:51 AM

  • [svn:fx-trunk] 9407: Reordering the if-statement in isMeasureFixed() exposed that hostFormat can be null when measure() is called if styles changed and measure is done before the next commitProperties .

    Revision: 9407
    Author:   [email protected]
    Date:     2009-08-19 15:11:34 -0700 (Wed, 19 Aug 2009)
    Log Message:
    Reordering the if-statement in isMeasureFixed() exposed that hostFormat can be null when measure() is called if styles changed and measure is done before the next commitProperties.  This states test exposed this.
    We should rethink if we want to clear hostFormat rather than have a hostFormatChanged flag.  If there is no hostFormat at measure then it has to be fixed because there is no line break format to check for auto-size.
    QE notes:
    Doc notes:
    Bugs: SDK-22779
    Reviewer: Gordon
    Tests run: checkintests
    Is noteworthy for integration: no
    Ticket Links:
        http://bugs.adobe.com/jira/browse/SDK-22779
    Modified Paths:
        flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/RichEditableText.as

    Oh my god, it is too long! You definitely check out types, casting and especially ODP.Net (it does everything for you)... etc. They can help you to simplify your code. I do not have enough time to copy paste it to Studio and understand and solve your issue, so I got title of your message as your main question.
    In Oracle, you can create an autonumber field by using sequences object. This is really useful when you need to create a unique number to act as a primary key.
    Basically you can create a sequence simply typing;
    CREATE SEQUENCE MY_SEQUENCE;
    now you have a sequence called "MY_SEQUENCE"... Then, I advice you select a number from sequence;
    select MY_SEQUENCE.nextval from dual;
    I said I advice actually kinda must, although it called sequence, I cannot be sequential. Do not even try to predict the value. You can be sure that it is unique number so you can use it.
    Then insert you record and use that number part of your primary key. I think that's it. Have fun.

  • On IPhone 5S, when making cell calls, it connects to FaceTime.

    On IPhone 5S, IOS 7.1.2, when making cell calls, it connects to FaceTime.

    Hey there siteshop,
    It sounds like you are still hearing the phone line ringing even after the person you call answers the line. I would try the troubleshooting outlined in this article:
    iPhone: Troubleshooting issues making or receiving calls
    https://support.apple.com/kb/TS3406
    Toggle airplane mode: Tap Settings > Enable Airplane Mode, wait five seconds, then turn off airplane mode.
    Ensure that your software is up to date:
    Check for a carrier settings update.
    Check for an iOS software update.
    Note: Some updates may require a Wi-Fi connection.
    If the iPhone has a SIM card, reseat the SIM card.
    If the iPhone 4 or iPhone 4s is on the Verizon network, dial *228 from the iPhone and select option 2 to update the Preferred Roaming List (PRL). The PRL determines the cellular towers the phone uses for cellular service, selecting those with the best signal strength.
    Reset the network settings: Tap Settings > General > Reset > Reset Network Settings.
    Try to make or receive calls in another location.
    Attempt to isolate to one network band:
    If you're having the issue on LTE, disable LTE, if possible, and try again.
    If you're having the issue on 3G/4G, disable 3G/4G, if possible, and try again.
    Contact the carrier to check the following:
    Your account is properly configured to use the specific iPhone that has the issue.
    There are no localized service outages.
    Your account doesn't have a billing-related block.
    Your calls don't have errors on the carrier system.
    Restore the phone as new.
    If the above steps don't resolve the issue, go to an Apple Retail Store, carrier, Apple Authorized Reseller, or contact AppleCare to send the phone in for service.
    Thank you for using Apple Support Communities.
    All the very best,
    Sterling

  • HI I have an Iphone 3GS and the microphone jack works when I play music but not when making phone calls.   please help as I use it for conference calls

    Hi   I use my phone for conference calls and use the microphone jack to connect to speakers.      It doesnt work when making phone calls but when i play music on the phone the jack works with the external speaker.   

    Happy to have been of help. Hope all goes smoothly.
    BTW, for the sake of others who may help you here, it's usually most polite if you mark the post that answered your question as being the one that "solves" it, not your own post. That's how people get points here, if a questioner marks their post as either "helpful" or "solving". It's not an issue for me, but for those just starting out in the forums it may be important to them. See:
    https://discussions.apple.com/static/apple/tutorial/mark.html
    and
    https://discussions.apple.com/static/apple/tutorial/reputation.html
    Regards.

  • Is there a problem with FaceTime, can not connect. When dial it connects and drops. When friends are calling me they have calling message and I have connecting but it does not connect. Need help, face time is my life line.

    Face time not working. When dialled it says connecting and drops immediately. When my friends calling it show connecting but it does not.
    Is there a problem with face time. I am in south Africa, it was working perfectly up to Easter. Please help this is my life line.

    There is a barely acknowledged issue. For Mac users Apple has released an update to the app, but for iOS users the recommendation is for users to update their ipad to the most recent operating system.
    There may be a fix coming for iOS6 users (which seem to be many of those having problems) or there may not be. If your ipad isn't up to date then you can update it and see if that helps, or if you don't want to update then you may want to wait and see if there is either a fix or if it fixes itself.

  • HT4623 i have issue with my iphone5, the phone is open and good network signal, but when some one calling me they cant reach me, like the phone is off

    i have issue with my iphone5, the phone is open and good network signal, but when some one calling me they cant reach me, like the phone is off

    You are as far as you can be with the original iPad; only iPad 2 and greater will update to 7+

  • I am not able to get name of the person when he is calling for which i have already saved the no. on my contact list i have reseted my phone twice help me out

    hello i have started using iphone 5 for which i downloaded my contacts from i clouds i am not able to get name of the person when he is calling for which i have already saved the no. on my contact list i have reseted my phone twice  its only showing the names of the person whose no. i have saved it with the country code i am staying in india new delhi pls help me i am fed up not able to get the name of person who is calling

    Sir, your Apple ID can be used as an iCloud account as well. They are both the same thing.
    You can learn more from --> Set up your Apple ID for iCloud and iTunes - Apple Support

Maybe you are looking for