Distributed Property
Hello.
I've just created a service object, based on a new subclass. The new
subclass has distributed property set to allowed, and the other three set to
disallowed. These are set about four layers further up the inheritance
hierarchy, and have subclass override turned off.
When I try and run my app, I get the following error:
USER ERROR: The class apiAbstractClasses.PanAPIReplicate used as the type of
service object apiAbstractClasses.PanAPIReplicateSO has the 'Distributed'
property set to 'DISALLOWED', so it cannot be used as the type of a
service
object.
Class: qqsp_UsageException
Error #: [1602, 358]
Detected at: qqcf_GlobalDefinition::ProxyClass at 1
Last TOOL statement: method partws.HandleRunCmd
Error Time: Tue Apr 17 17:33:34
Exception occurred (locally) on partition "Forte_cl0_Client",
(partitionId
= 2DC37DB0-BD7A-11D4-A08F-220DA12BAA77:0x1ad3:0xb, taskId =
[2DC37DB0-BD7A-11D4-A08F-220DA12BAA77:0x1ad3:0xb.392]) in application
"FTLaunch_cl0", pid 318 on node TORGOS in environment 43DENV.
So I have distributed set to Allowed and the error says "Oh know you don't"
in true panto style.
Anyone like to suggest a direction I start looking in to fix this?
Cheers,
Tim Sawyer
Development Consultant
PanCredit
Leeds, UK.
This e-mail and its attachments are for the use of the addressee only.
It may contain information that is legally privileged, confidential and
exempt from disclosure. It is not a contract, and prices, data
and other information are not warranted as to completeness or accuracy.
Any comments or statements made herein do not necessarily
reflect those of PanCredit Systems Limited. If you are not the intended
recipient you must not copy, distribute or disseminate this e-mail
or attachments to anyone other than the addressee.
If you receive this communication in error please advise us by telephone
at once.
PanCredit Systems Limited
Tel: +44 113 250 0260
Fax: +44 113 250 0621
Hi Jagadish,
I'm not trying to change it, it's at "Allowed" on all of my superclasses,
and I want it to be "Allowed" on the subclass too. If I remember correctly
there's some blurb in the manual somewhere that objects are smaller and/or
quicker if you turn of the subclass override thing?
Anyway, apparently, according to other replies I've received, it's just a
forte bug, and I need to recreate the service object. I'll give it a go
when I get in to work tomorrow and come back to you all if it still doesn't
work...
Thanks everyone,
Tim Sawyer
Development Consultant
PanCredit
Leeds, UK.
-----Original Message-----
From: [email protected]
To: Tim Sawyer
Cc: '[email protected]'
Sent: 17/04/01 18:39
Subject: Re: (forte-users) Distributed Property
You have the answer. A class should set "Subclass Override" to TRUE (or
ON)
if it wants any of its derived classes to override the behaviour.
If you want your subclass to be able set its Runtime properties
(Distributed, Shared, Transactional, Monitored), then turn ON "Subclass
override" in all the classes above in the hierarchy.
Jagadish
This e-mail and its attachments are for the use of the addressee only.
It may contain information that is legally privileged, confidential and
exempt from disclosure. It is not a contract, and prices, data
and other information are not warranted as to completeness or accuracy.
Any comments or statements made herein do not necessarily
reflect those of PanCredit Systems Limited. If you are not the intended
recipient you must not copy, distribute or disseminate this e-mail
or attachments to anyone other than the addressee.
If you receive this communication in error please advise us by telephone
at once.
PanCredit Systems Limited
Tel: +44 113 250 0260
Fax: +44 113 250 0621
Similar Messages
-
Re: (forte-users) Distributed Property
You have the answer. A class should set "Subclass Override" to TRUE (or ON)
if it wants any of its derived classes to override the behaviour.
If you want your subclass to be able set its Runtime properties
(Distributed, Shared, Transactional, Monitored), then turn ON "Subclass
override" in all the classes above in the hierarchy.
Jagadish
Tim Sawyer
<Tim.Sawyer@panc To: "'[email protected]'"
redit.com> <[email protected]>
cc:
04/17/2001 12:37 Fax to:
Subject: (forte-users) Distributed Property
Hello.
I've just created a service object, based on a new subclass. The new
subclass has distributed property set to allowed, and the other three set
to
disallowed. These are set about four layers further up the inheritance
hierarchy, and have subclass override turned off.
When I try and run my app, I get the following error:
USER ERROR: The class apiAbstractClasses.PanAPIReplicate used as the type
of
service object apiAbstractClasses.PanAPIReplicateSO has the 'Distributed'
property set to 'DISALLOWED', so it cannot be used as the type of a
service
object.
Class: qqsp_UsageException
Error #: [1602, 358]
Detected at: qqcf_GlobalDefinition::ProxyClass at 1
Last TOOL statement: method partws.HandleRunCmd
Error Time: Tue Apr 17 17:33:34
Exception occurred (locally) on partition "Forte_cl0_Client",
(partitionId
= 2DC37DB0-BD7A-11D4-A08F-220DA12BAA77:0x1ad3:0xb, taskId =
[2DC37DB0-BD7A-11D4-A08F-220DA12BAA77:0x1ad3:0xb.392]) in application
"FTLaunch_cl0", pid 318 on node TORGOS in environment 43DENV.
So I have distributed set to Allowed and the error says "Oh know you don't"
in true panto style.
Anyone like to suggest a direction I start looking in to fix this?
Cheers,
Tim Sawyer
Development Consultant
PanCredit
Leeds, UK.
This e-mail and its attachments are for the use of the addressee only.
It may contain information that is legally privileged, confidential and
exempt from disclosure. It is not a contract, and prices, data
and other information are not warranted as to completeness or accuracy.
Any comments or statements made herein do not necessarily
reflect those of PanCredit Systems Limited. If you are not the intended
recipient you must not copy, distribute or disseminate this e-mail
or attachments to anyone other than the addressee.
If you receive this communication in error please advise us by telephone
at once.
PanCredit Systems Limited
Tel: +44 113 250 0260
Fax: +44 113 250 0621
For the archives, go to: http://lists.xpedior.com/forte-users and use
the login: forte and the password: archive. To unsubscribe, send in a new
email the word: 'Unsubscribe' to: [email protected]Hi Jagadish,
I'm not trying to change it, it's at "Allowed" on all of my superclasses,
and I want it to be "Allowed" on the subclass too. If I remember correctly
there's some blurb in the manual somewhere that objects are smaller and/or
quicker if you turn of the subclass override thing?
Anyway, apparently, according to other replies I've received, it's just a
forte bug, and I need to recreate the service object. I'll give it a go
when I get in to work tomorrow and come back to you all if it still doesn't
work...
Thanks everyone,
Tim Sawyer
Development Consultant
PanCredit
Leeds, UK.
-----Original Message-----
From: [email protected]
To: Tim Sawyer
Cc: '[email protected]'
Sent: 17/04/01 18:39
Subject: Re: (forte-users) Distributed Property
You have the answer. A class should set "Subclass Override" to TRUE (or
ON)
if it wants any of its derived classes to override the behaviour.
If you want your subclass to be able set its Runtime properties
(Distributed, Shared, Transactional, Monitored), then turn ON "Subclass
override" in all the classes above in the hierarchy.
Jagadish
This e-mail and its attachments are for the use of the addressee only.
It may contain information that is legally privileged, confidential and
exempt from disclosure. It is not a contract, and prices, data
and other information are not warranted as to completeness or accuracy.
Any comments or statements made herein do not necessarily
reflect those of PanCredit Systems Limited. If you are not the intended
recipient you must not copy, distribute or disseminate this e-mail
or attachments to anyone other than the addressee.
If you receive this communication in error please advise us by telephone
at once.
PanCredit Systems Limited
Tel: +44 113 250 0260
Fax: +44 113 250 0621 -
RE: (forte-users) Conductor Distributed AccessException
Man! you need some Gas. Top it up and give it a go :)
-----Original Message-----
From: mmynatt [mailto:mmynattcomponentsartistry.com]
Sent: Wednesday, 29 March 2000 10:19 am
To: Forte-Users-Digest
Subject: (forte-users) Conductor Distributed Access Exception
Hi,
Has anyone ever seen this error message in the conductor trace window on
starting an engine:
Channel.Open() Distributed Access exception on initiator channel "Ping" from
initiator component dbserv1(db unit) to component DB router primary caused
the channel to be disconnected.
The engine will not start.
Mark Mynatt
Components Artistry, Inc.
303-688-0784
mmynattcomponentsartistry.com <mailto:mmynattcomponentsartistry.com>Hi Jagadish,
I'm not trying to change it, it's at "Allowed" on all of my superclasses,
and I want it to be "Allowed" on the subclass too. If I remember correctly
there's some blurb in the manual somewhere that objects are smaller and/or
quicker if you turn of the subclass override thing?
Anyway, apparently, according to other replies I've received, it's just a
forte bug, and I need to recreate the service object. I'll give it a go
when I get in to work tomorrow and come back to you all if it still doesn't
work...
Thanks everyone,
Tim Sawyer
Development Consultant
PanCredit
Leeds, UK.
-----Original Message-----
From: [email protected]
To: Tim Sawyer
Cc: '[email protected]'
Sent: 17/04/01 18:39
Subject: Re: (forte-users) Distributed Property
You have the answer. A class should set "Subclass Override" to TRUE (or
ON)
if it wants any of its derived classes to override the behaviour.
If you want your subclass to be able set its Runtime properties
(Distributed, Shared, Transactional, Monitored), then turn ON "Subclass
override" in all the classes above in the hierarchy.
Jagadish
This e-mail and its attachments are for the use of the addressee only.
It may contain information that is legally privileged, confidential and
exempt from disclosure. It is not a contract, and prices, data
and other information are not warranted as to completeness or accuracy.
Any comments or statements made herein do not necessarily
reflect those of PanCredit Systems Limited. If you are not the intended
recipient you must not copy, distribute or disseminate this e-mail
or attachments to anyone other than the addressee.
If you receive this communication in error please advise us by telephone
at once.
PanCredit Systems Limited
Tel: +44 113 250 0260
Fax: +44 113 250 0621 -
Amy,
What is happening is that you are trying to send an object between 2
partitions
(probably a parameter of the UpdateAllChannelsState(), of type
JC_DSGService),
and this object references, at its own level or through a cascade of
attributes,
an object of type EventRegistration (Object returned by the Register()
statement).
Such objects, just like Timers and Files, can NOT be sent to a remote
partition.
To fix it, you have to Nil out such references before sending between
partitions.
Hope this helps,
Vincent Figari
On Fri, 6 Mar 1998 12:07:28 -0500 Amy Devine <[email protected]>
writes:
We have an application that runs successfully in interpreted mode, but
once
we make the distribution, we get the following error:
Exception escaped from terminating task PlaybackWindow.Display:
SYSTEM ERROR: Error serializing attribute 2 of class JC_DSGService
(serialization type 5).
Class: qqsp_SerializationException
Detected at: qqrt_4GLClassType::InstanceXlate at 1
Last TOOL statement: method PlaybackWindow.UpdateAllChannelsState
Error Time: Fri Mar 06 12:01:30
Distributed method called: JobControllerProxy.GetObjAttr (object
name
site/iseng_jobcontroller_3_cl0/iseng_ui_4_cl1-jobcontrollerso)
from
partition "ISENG_UI_4_cl1_Client", (partitionId =
8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e5:0x8, taskId =
[8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e5.74]) in application
"FTLaunch_cl0", pid 75 on node KATHY in environment centrale
Exception occurred (remotely) on partition "Forte_Executor",
(partitionId
= 8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e9, taskId =
[8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e9.15]) in application
"ISENG_UI_4_cl1", pid 111 on node KATHY in environment centrale.
The remainder of the Error Manager stack is:
SYSTEM ERROR: An attempt was made to send a reference to an anchored
object
(qqlo_EventHandlerInfo) to another partition, but the object has no
Proxy
class. The object was anchored by setting the IsShared or
IsAnchored
attribute, but the object's class did not have the Distributed
property
set.
Class: qqsp_UsageException with ReasonCode:
SP_ER_SERIALIZATIONERROR
Detected at: qqdo_ProxyMgr::GetScopeClass at 1
Error Time: Fri Mar 06 12:01:30
Exception occurred (remotely) on partition "Forte_Executor",
(partitionId
= 8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e9, taskId =
[8FCF8A10-B2BE-11D1-AB24-3CCB8932AA77:0x1e9.15]) in application
"ISENG_UI_4_cl1", pid 111 on node KATHY in environment centrale.
We are running Forte 3.0.F.0 on NT. The service object cited in the
error,
JC_DSGService has its properties set as IsShared = Allowed and
IsDistributed = Allowed. Any ideas what could be causing this error?
TIA,
Amy Devine
You don't need to buy Internet access to use free Internet e-mail.
Get completely free e-mail from Juno at http://www.juno.com
Or call Juno at (800) 654-JUNO [654-5866]As I thought, you're trying to query from the triggering table.
I believe the following would give you the desired result without having to include that table in the query...
CREATE OR REPLACE TRIGGER XXWMM_REQUISITION_TRG before insert on PO_REQUISITION_LINES_ALL
FOR EACH row
Declare
v_source_code VARCHAR2(200);
Begin
SELECT interface_source_code
into v_source_code
FROM po_requisition_headers_all prh
where prh.requisition_header_id = :new.requisition_header_id
IF v_source_code = 'MSC' THEN
:new.NOTE_TO_VENDOR := :new.NOTE_TO_RECEIVER;
ELSE
Null;
END IF;
End; -
Problem with the naming service
Hi All,
I want to register one distributed object with
the naming service explicitly. I set the distributed
property "allowed" for the class, and in the init
method, i tried to set isAnchored property and tried
to register the object using REgisterObject method. It
says, object already registered with the naming
service. So, i set Distributed Property isDefault, the
same error pops up. What could be the mistake? I know
that, from the same partition, we can't register
twice.
any help is appreicated.
Thanks,
Babu
Get Yahoo! Mail – Free email you can access from anywhere!
http://mail.yahoo.com/See https://opends.dev.java.net/servlets/ProjectForumMessageView?messageID=31827&forumID=3292.
Regards,
Ludovic. -
IIOP Java mode - proxy classes generation
Hello,
I have been able to use Jave-mode for call-in from a Java client to a
Forte Server. Among the generated Java files, I observe that for each
service object, there is also an IIOP proxy class - Java file with the
_pxy name appended to the front.
for example: ServerClass is a Tool Class, and there is a service object
based on it. The "Make Distribution" process has generated the
corresponding pxyServerClass.java also. It may be that the proxy
files are generated for all Forte classes. I am not sure.
The whole scheme of things has worked perfectly well for a simple test
project that I wrote.
But, there is another Plan, our Project's main Plan, that has some
Supplier Plans, which in turn have a few other Supplier Plans, etc, the
generated Java files does not have a single proxy class! I am unable to
figure out why. Are there places that I should look for?
In all, there are 2 DB Resouce Service Objects, 5 TOOL SOs in our
application configuration. I tried switching the Distributed property
from Allowed to IsDefault, but that didn't alter anything.
Any help will be greatly appreciated.
On a related note:
When using IDL mode...
Operator overriding is not allowed when using IDL2Java compiler of
VisiBroker. You have class B that extends A. A method is redefined may
be, with say different parameters. The .idl file won't compile, aborts
with an error "attempt to redefine operator/varialbe". I heard from a
colleague of mine (in fact I saw it compiling on his machine) that
OrbixWeb allows this. This seemed like a basic requirement, it was hard
to imagine that IDL syntax would not support that. Now, I realise that
it is a problem with Visigenic product. Have other developers come
across this problem? Is there a workaround?
Thanks,
Kishore Puvvada
International Business Corporation
Get Your Private, Free Email at http://www.hotmail.com
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>Hi Mark!!
I would suggest you to check the components created for the Interface. The main components of an Enterprise beans are like this:
<Interface>_PortTypeImplRemote
<Interface>_PortTypeImplRemoteHome
<Interface>_PortTypeImplLocal
<Interface>_PortTypeImplLocalHome
<Interface>_PortTypeBean
You can decompile if you have the Class file. It may be possible that the file got corrupted while creation.
Decompile the file if you have only the class file(Use DJ Compiler or JAD.exe). This will tell you whether the error is with the bytecode of the bean class.
Cheers!!
AnuraG -
Reverse replicate a delete operation
We have to do a massive migration of users. Our users are stored under a structure folder like this:
/home/users/company/<firstLetter>/<secondLetter>/<username>
e.g.: /home/users/company/t/e/[email protected]
In our new approach we store users using a hash function and a five-level depth structure like this:
/home/users/company/ab/cd/ef/12/34/[email protected]
So now we have to migrate all the users from the old structure to the new one. In order to do that we are moving the user nodes from path A to path B. So it is like oldUserNode is deleted and a newUserNode is being created.
So, we need to find a way to replicate that node's deletion. Obviously I can't set the cq:distribute property since the node is not there anymore, so I need to find a way to (reverse) replicate that action to the other instances.
Thanks in advance.
Cheers,
Clemente.Hi, if you're deleting much more than you keep i suggest you to:
- create a "twin table"
- insert the rows you want to to keep in the twin table
- truncate the original table
- re-insert the copied rows
- commit
- drop the copy table.
The truncate table is much more faster than a delete the complete table (this is a DDL operation while the Delete is a DML operation)
Sorry someoneElse i didn't see you last proposal (it's the same)
Edited by: user11268895 on Jul 10, 2010 3:19 PM
Another way to monitor this operation (if you are in PL/SQL) is to usethe dbms_Application_info package, here is an example:
DECLARE
i NUMBER := 0;
f BOOLEAN := FALSE;
BEGIN
WHILE NOT (f)
LOOP
DELETE FROM t1
WHERE rwonum <= 20000;
i := i + SQL%ROWCOUNT;
DBMS_APPLICATION_INFO.set_client_info ( i
|| ' record have been deleted...'
COMMIT;
IF SQL%ROWCOUNT < 20000
THEN
f := TRUE;
END IF;
END LOOP;
END;then you'll be able to see how many rows were deleted at "any" time:
SELECT client_info,v.*
FROM SYS.v_$session vEdited by: user11268895 on Jul 10, 2010 3:20 PM -
Cachestore for distributed scheme not getting invoked to "load" the entries
Hi,
We have a distributed scheme with CacheStore as below,
SERVER PART
<?xml version="1.0"?>
<!DOCTYPE cache-config SYSTEM "cache-config.dtd">
<cache-config>
<caching-scheme-mapping>
<cache-mapping>
<cache-name>ReferenceData-Cache</cache-name>
<scheme-name>RefData_Distributed_Scheme</scheme-name>
</cache-mapping>
<!--
FEW OTHER DISTRIBUTED CACHE
-- >
</caching-scheme-mapping>
<caching-schemes>
<!-- definition of other cache schemes including one proxy scheme -->
<distributed-scheme>
<scheme-name>RefData_Distributed_Scheme</scheme-name>
<service-name>RefData_Distributed_Service</service-name>
<serializer>
<class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name>
<init-params>
<init-param>
<param-type>string</param-type>
<param-value>TradeEngine-POF.xml</param-value>
</init-param>
</init-params>
</serializer>
<backing-map-scheme>
<read-write-backing-map-scheme>
<internal-cache-scheme>
<local-scheme>
<expiry-delay>1m</expiry-delay>
</local-scheme>
</internal-cache-scheme>
<cachestore-scheme>
<class-scheme>
<class-name>com.csfb.fid.gtb.referencedatacache.cachestore.RefDataCacheStore</class-name>
<init-params>
<init-param>
<param-type>string</param-type>
<param-value>{cache-name}</param-value>
</init-param>
</init-params>
</class-scheme>
</cachestore-scheme>
<read-only>true</read-only>
<refresh-ahead-factor>.5</refresh-ahead-factor>
</read-write-backing-map-scheme>
</backing-map-scheme>
<backup-count>1</backup-count>
<autostart system-property="tangosol.coherence.distributed-service.enabled">false</autostart>
</distributed-scheme>
</caching-schemes>
</cache-config>
The above configuration is used on tcp extend proxy node with localstorage=false
There is similar configuration on storage node,
- with no proxy,
- with same "ReferenceData-Cache" (autostart=true)
- and localstorage=true.
Following is my CacheStore implementation.
NOTE: This Cachestore is only for loading the cache entry from cache store.i.e. from some excel file in my case, i.e. only load() and loadAll() methods.
NO store() or storeAll().
package com.csfb.fid.gtb.referencedatacache.cachestore;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import com.creditsuisse.fid.gtb.common.FileLogger;
import com.csfb.fid.gtb.referencedatacache.Currency;
import com.csfb.fid.gtb.utils.refdada.DBDetails;
import com.csfb.fid.gtb.utils.refdada.ReferenceDataReaderUtility;
import com.tangosol.net.NamedCache;
import com.tangosol.net.cache.CacheStore;
public class RefDataCacheStore implements CacheStore
private DBDetails dbDetails = null;
private ReferenceDataReaderUtility utils = null;
public RefDataCacheStore(String cacheName)
System.out.println("RefDataCacheStore constructor..");
//dbDetails = DBDetails.getInstance();
utils = new ReferenceDataReaderUtility();
public Object load(Object key)
return utils.readCurrency(key);
public void store(Object oKey, Object oValue)
public void erase(Object oKey)
public void eraseAll(Collection colKeys)
public Map loadAll(Collection colKeys)
System.out.println("RefDataCacheStore loadAll..");
Map<String, Object> obejctMap = new HashMap<String, Object>();
List<Object> list = utils.readAllCurrencies();
Iterator<Object> listItr = list.iterator(colKeys);
while(listItr.hasNext()){
Object obj = listItr.next();
if(obj != null){
String key = "CU-"+((Currency)obj).getId();
obejctMap.put(key, (Currency)obj);
return obejctMap;
public void storeAll(Map mapEntries)
CLIENT PART
I connect to this cache using extend client with follwing config file,
<?xml version="1.0"?>
<!DOCTYPE cache-config SYSTEM "cache-config.dtd">
<cache-config>
<caching-scheme-mapping>
<cache-mapping>
<cache-name>ReferenceData-Cache</cache-name>
<scheme-name>coherence-remote-scheme</scheme-name>
</cache-mapping>
</caching-scheme-mapping>
<caching-schemes>
<remote-cache-scheme>
<scheme-name>coherence-remote-scheme</scheme-name>
<initiator-config>
<serializer>
<class-name>com.tangosol.io.pof.ConfigurablePofContext</class-name>
<init-params>
<init-param>
<param-type>string</param-type>
<param-value>TradeEngine-POF.xml</param-value>
</init-param>
</init-params>
</serializer>
<tcp-initiator>
<remote-addresses>
<socket-address>
<address>169.39.30.182</address>
<port>9001</port>
</socket-address>
</remote-addresses>
<connect-timeout>10s</connect-timeout>
</tcp-initiator>
<outgoing-message-handler>
<request-timeout>3000s</request-timeout>
</outgoing-message-handler>
</initiator-config>
</remote-cache-scheme>
</caching-schemes>
</cache-config>
PROBLEM
From my test case (with extend client file as configuration), when i try to connect to get cache handle of this cache, as
refDataCache = CacheFactory.getCache("ReferenceData-Cache");
I get following error on server side,
2010-05-12 18:28:25.229/1687.847 Oracle Coherence GE 3.5.3/465 <Error> (thread=DistributedCache, member=2): BackingMapManager com.tangosol.net.DefaultConfigurableCacheFactory$Manager: failed to instantiate a cache: ReferenceData-Cache
2010-05-12 18:28:25.229/1687.847 Oracle Coherence GE 3.5.3/465 <Error> (thread=DistributedCache, member=2):
java.lang.IllegalArgumentException: No scheme for cache: "ReferenceData-Cache"
at com.tangosol.net.DefaultConfigurableCacheFactory.findSchemeMapping(DefaultConfigurableCacheFactory.java:507)
at com.tangosol.net.DefaultConfigurableCacheFactory$Manager.instantiateBackingMap(DefaultConfigurableCacheFactory.java:3486)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$Storage.instantiateResourceMap(DistributedCache.CDB:22)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$Storage.setCacheName(DistributedCache.CDB:27)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$ConfigListener.entryInserted(DistributedCache.CDB:15)
at com.tangosol.util.MapEvent.dispatch(MapEvent.java:266)
at com.tangosol.util.MapEvent.dispatch(MapEvent.java:226)
at com.tangosol.util.MapListenerSupport.fireEvent(MapListenerSupport.java:556)
at com.tangosol.util.ObservableHashMap.dispatchEvent(ObservableHashMap.java:229)
at com.tangosol.util.ObservableHashMap$Entry.onAdd(ObservableHashMap.java:270)
at com.tangosol.util.SafeHashMap.put(SafeHashMap.java:244)
at com.tangosol.coherence.component.util.collections.WrapperMap.put(WrapperMap.CDB:1)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid$ServiceConfigMap.put(Grid.CDB:31)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache$StorageIdRequest.onReceived(DistributedCache.CDB:45)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onMessage(Grid.CDB:9)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onNotify(Grid.CDB:136)
at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.DistributedCache.onNotify(DistributedCache.CDB:3)
at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:42)
at java.lang.Thread.run(Thread.java:619)
However, with this error also i am able to do normal put operation and get operation against those put.
But when i try to get the cache entry which doesnt exists in cache, like
refDataCache.get("CU-1");
I expected that call would go to RefDataCacheStore.load method. But in my case i dont see it happening.
Also i debugged my jvms in debug mode and i put a class load breakpoint for RefDataCacheStore, but even that is not hit. I have RefDataCacheStore in my server classpath.
Hope to see reply on this soon.
Thanks
ManishHi Manish,
<<previous advice deleted>>
user13113666 wrote:
Hi,
I have my server picking up the correct configuration files for "ReferenceData-Cache". In my local jconsole i could see that the service named "RefData_Distributed_Service" is started under service mbean. Also i am able to perform a put and get on "ReferenceData-Cache", i could even see StorageManager mbean showing my inserted entries for "RefData_Distributed_Service".With the local jconsole, are you monitoring the server/proxy node, or the TCP*Extend cleint node?
The client can have the service with the server still not having it.
Could you please post the startup log for the storage node on the server...
Best regards,
Robert
Edited by: robvarga on May 17, 2010 12:33 PM -
EJB 3.0 and JTA (Distributed transactions)
hi, first of all sorry for my english.
then :)
i'm working with JBoss Aplication Server an Oracle DataBase using EJB 3.0
i have no problem before ... but now i want work with multiple database and i wand to manage transactions ... how i understand JTA (Java Transaction Api) is a technology for it.
i think that i need two datasource file for example oracle-xa-ds.xml and postgres-ds.xml
<datasources>
<xa-datasource>
<jndi-name>XAOracleDS</jndi-name>
<track-connection-by-tx/>
<isSameRM-override-value>false</isSameRM-override-value> <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
<xa-datasource-property name="URL">jdbc:oracle:thin:@192.9.200.177:1521:devnbtwo</xa-datasource-property>
<xa-datasource-property name="User">paata</xa-datasource-property>
<xa-datasource-property name="Password">1982226</xa-datasource-property> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
<no-tx-separate-pools/>
<metadata>
<type-mapping>Oracle9i</type-mapping>
</metadata>
</xa-datasource>
<mbean code="org.jboss.resource.adapter.jdbc.vendor.OracleXAExceptionFormatter"
name="jboss.jca:service=OracleXAExceptionFormatter">
<depends optional-attribute-name="TransactionManagerService">jboss:service=TransactionManager</depends>
</mbean>
</datasources>
<datasources>
<local-tx-datasource>
<jndi-name>PostgresDS</jndi-name>
<connection-url>jdbc:postgresql://localhost:5432/Test</connection-url>
<driver-class>org.postgresql.Driver</driver-class>
<user-name>postgres</user-name>
<password>1982226</password>
<new-connection-sql>select 1</new-connection-sql>
<metadata>
<type-mapping>PostgreSQL 7.2</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>and i dont know what should i do in my persistance.xml file ..... when i was working with single database my persistance.xml file was working
<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
version="1.0">
<persistence-unit name="Oracle" transaction-type="JTA">
<jta-data-source>java:/XAOracleDS</jta-data-source>
<class>com.magti.businesslayer.ejb3entity.Group</class>
<class>com.magti.businesslayer.ejb3entity.Student</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect"/>
<property name="hibernate.connection.driver_class" value="oracle.jdbc.driver.OracleDriver"/>
<property name="hibernate.connection.url" value="jdbc:oracle:thin:@192.9.200.177:1521:devnbtwo"/>
<property name="hibernate.connection.username" value="paata"/>
<property name="hibernate.connection.password" value="1982226"/>
<property name="hibernate.default_schema" value="PAATA"/>
</properties>
</persistence-unit>
</persistence>but then i added anothe unit for second database and i get error
<persistence-unit name="PostgreSql" transaction-type="JTA">
<jta-data-source>java:/PostgresDS</jta-data-source>
<class>com.magti.businesslayer.ejb3entity.Group</class>
<class>com.magti.businesslayer.ejb3entity.Student</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.PostgreSQLDialect"/>
<property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/>
<property name="hibernate.connection.url" value="jdbc:postgresql://localhost:5432/Test"/>
<property name="hibernate.connection.username" value="postgres"/>
<property name="hibernate.connection.password" value="1982226"/>
<property name="hibernate.default_schema" value="postgres"/>
</properties>
</persistence-unit> i don't know how i resolve it .
i can't find any simple exaplme about distributed transactions on net ...
can anybody help me ....
thanks.Check this one:
http://www.webagesolutions.com/knowledgebase/javakb/jkb005/index.html -
How to get the property name of a srop down menu in the Actiion Class
Hi All!
I am trying to build two drop down menu in the jsp!When the page first loads the first menu is populated with the data from the database.Depending on the choise made in the first menu the second gets populated!
As of now I am using these codes!
The JSP contains:
function getCorrespondingSkills(obj)
document.forms[0].target="_self";
document.forms[0].action='<%=request.getContextPath()%>/jsp/resume/Skill.do?method=getSkillsList&technologyId='+obj.value+'&selectedField='+obj.property;
document.forms[0].submit();
function submitTechSkills(obj)
document.forms[0].target="_self";
document.forms[0].action='<%=request.getContextPath()%>/jsp/resume/Skill.do?method=getSkillsValue&skillId='+obj.value;
//document.forms[0].submit();
<td class="brdrInput">
<%--<html:select name="SkillsForm" property="technologies1" onchange='getCorrespondingSkills(this)'>--%>
<html:select name="SkillsForm" property="technologies1"onchange='getCorrespondingSkills(this)'>
<html:optionsCollection property="technologyList" value="technologyId" label="technology" />
</html:select>
</td>
<td class="brdrInput">
<html:select name="SkillsForm" property="skills1"onchange='submitTechSkills(this)' >
<html:optionsCollection property="skillList" value="skillId" label="skill" />
</html:select>
</td>The action class is something like this:
public ActionForward unspecified(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
HttpSession session=request.getSession();
String str=(String)session.getAttribute("employeeId");
System.out.println("this is the employeeId"+str);
SkillsForm formObject=(SkillsForm)form;
List technologyList;
technologyList=(List)TechnologyDelegate.getTechnologyFromDB();
for (Iterator iter = technologyList.iterator(); iter.hasNext();) {
Technology tech= (Technology) iter.next();
System.out.println("Technology"+tech.getTechnology());
System.out.println("TechnologyId"+tech.getTechnologyId());
formObject.setTechnologyList(technologyList);
//Populate a Skills drop menu corresponding to the first technologyId
int var=1;
Integer var1=new Integer(var);
List skillsList;
skillsList=(List)SkillsDelegate.getSkillFromDB(var1);
formObject.setSkillList(skillsList);
System.out.println("associated Skills"+formObject.getSkillList().size());
System.out.println("=============>");
session.setAttribute("employeeId",str);
return mapping.findForward("skillsPopulation");
public ActionForward getSkillsList(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
HttpSession session=request.getSession();
SkillsForm formObject=(SkillsForm)form;
List technologyList;
technologyList=(List)TechnologyDelegate.getTechnologyFromDB();
for (Iterator iter = technologyList.iterator(); iter.hasNext();) {
Technology tech= (Technology) iter.next();
System.out.println("Technology"+tech.getTechnology());
System.out.println("TechnologyId"+tech.getTechnologyId());
formObject.setTechnologyList(technologyList);
Integer techId=new Integer(formObject.getTechnologyId());
String technologyId=formObject.getTechnologyId();
List skillsList;
skillsList=(List)SkillsDelegate.getSkillFromDB(techId);
//All the skillList being set along with the one that has to be!
formObject.setSkillList(skillsList);
//the SkillLsit that is being used to populate the drop down is being reset
//every time a new technology is set!
//to overcome this we need to define seperate SkillList for each row!
List var=formObject.getSkillList();
for (Iterator iter = var.iterator(); iter.hasNext();)
Skills vari= (Skills) iter.next();
System.out.println("SKILLS IDSFASDFGAGFG "+vari.getSkillId());
System.out.println("skillsList"+skillsList.size());
System.out.println("associated Skills"+formObject.getSkillList().size());
session.setAttribute("employeeId",session.getAttribute("employeeId"));
session.setAttribute("technologyList",technologyList);
session.setAttribute("technologyId",technologyId);
System.out.println("TECHNOLOGY ID"+technologyId);
System.out.println("TECHNOLOGY ID"+techId);
return mapping.findForward("refreshAgain");
}* The first function id used to populate the form with the first technology in the databse and its corresponding skills! The second function fetches the skills wrt the selected technology!
My prob is that when ever I change the technology in the dropdown My all skills menu gets populated with the skills associated with the selected technology!
I have 5 rows of such tech and skills columns! And the prob is that if I select tech inthe 2nd row then all the skills rows gets changed! all I want is that the 2nd row only be populated!
Is there a way in which I can know in my action class ,'which row has been selected'.
I am a newbie to Java and am just learning things!
Pls do help! I am desperate!!!!!!!1So far as I'm aware, you can't get metadata information about the underlying tables in a query from Oracle and/or the Oracle drivers. I suspect, in fact, that the driver would have to have its own SQL parser to get this sort of information.
I'm curious though-- how do you have application logic that depends on the name of the source table but not know in the application what table is involved? Could you do something "cheesy" like
SELECT 'tbl_customerRegistration' AS tbl1_name,
tbl_customerRegistration.*
...Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
Distributed Document Capture and date fields
Greetings!
We are using Oracle Distributed Document Capture and Universal Content Management as repository, it works fine. However we defined a custom metadata field with data type "date" in UCM and we defined a scan profile with its asssociated date field and the problem that we have is when we are using the distributed document capture client and the user selects a date from the calendar and send the document, the commit process fails with the following error message :
The field 'xxx' does not contain a valid date.
However If the user types the date field as "29/01/2009 00:00" the commit process works fine and the document is stored on UCM.
My question is how to enable the calendar on the Distributed Document Capture client in order to enter a valid date with format "dd/m/yyyy hh:mm"
Thanks!Thanks for your answer I set the property "Automatically assign a Content ID on check in" Should I specify the minor revision label and the major revision label?.
Because I set just the "Automatically assign a Content ID on check in" and now I got the following when I am scanning documents:
***Error*** Failed to process batch 01354425_01354446. Error Number: 40011, Error: Failed to commit batch (with delete). Commit Profile - ucm: Document file already exists. Commit is configured to abort. Document File: \\svrdocumentos_ejc_ejercito_mil_co\batch\00J\0000000D\0000000D_1.TIF
The good news is the previous error "Error Number: 40008" is solved
I really appreciate yor help.
Thanks. -
How to use DESNAME and DISTRIBUTE to mail
Hello,
I am using Oracle Reports 10g. I have a report (clients' invoices) which repeats on INVOICE_NO. (setup to burst).
I go to Property Inspector >> Distribution:
DISTRIBUTION ID: EMAIL_ADDRESS
DESNAME: EMAIL_ADDRESS (this is the column in the database table which holds the emails of each clients, to whom the report is going to be sent; each client receives his/hers invoice)
DESFORMAT: PDF
DESTYPE: MAIL
COPIES: 1
I save, and then File >> Distribute, (asks me that is going to be send to multiple destinations) says: Distribution completed succesfully. BUT nothing happens (no emails).
Questions:
1. How should i write in order to distribute to each clients' email?
2. Where could i see the activity logs of the application (are there any), where i could investigate what is going on in the backend?
Thank you,
Michael.Hi there guys,
I have tracked down my mistaked.
in the object navigator, i clicked on main, then in the body i have spotted down the R_ section, clicked on it, and then in the report design i have deleted. Then it worked like a charm.
I have filled in the distribution box like this: &<subscriber_name>, and then i got each PDF bursted and distributed in each mail. That's great!!!
The question is now:
1. How can i configure all the details that will be displayed in the email? (like sender, subject, body etc.) Using the distribution box it gives me no alternative, in the distribution XML i can do this by editting all the details.
2. How can i log all the responses that i get from each e-mail address to which has an email been sent. For example, one e-mail address is not valid anymore, i want to grep the answer that the mail server receives and in the end, to make a report ( out of 100% - 20% failed, 80% succesfully delivered). How can i accomplish this task?
Thank you,
Michael. -
I have 3 applications on App. Server 8.1 (running on JDK 1.5)
App-A handles login
App-B and App-C are functions that are accessible after login is validated.
It works fine with App. Server 6.5 (JDK 1.3)
But the distributed session cannot be shared in App. Server 8.1 (JDK 1.5)
So App-A handles sign on and stores the user's Login Name on the session.
App-B and App-C read the user's login name from the session object and grant access to different modules.
1. Starting App-A and perform login
2. Starting App-B from App-A (it is linked there)
3. Starting App-C from App-A (it is linked there)
In step 1, a new session is created for the user, an attribute ("LoginName") is put in the session - ie. using HttpSession.setAttribute()
In step 2, the program checks for attribute "LoginName" from the session object - ie. using HttpSession.getAttribute()
If not found, redirect to login; if found, then continue with App-B
In step 3, same as in step 2 above.
It works fine with App. Server 6.5 but problem occurs in step 2 and 3.
web.xml of App-A, App-B and App-C:
<i>
<web-app version="2.4" 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/web-app_2_4.xsd">
<display-name>App-A</display-name>
<distributable/>
</i>
sun-web.xml of App-A, App-B and App-C
<i>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.1 Servlet 2.4//EN" "http://www.sun.com/software/appserver/dtds/sun-web-app_2_4-1.dtd">
<sun-web-app>
<session-config>
<session-manager persistence-type="memory">
<manager-properties>
<property name="persistenceFrequency" value="web-method"/>
</manager-properties>
<store-properties>
<property name="persistenceScope" value="session"/>
</store-properties>
</session-manager>
</session-config>
</i>Distributed sessions has nothing to do with different web applications. The concept is about distributing load for the same application between several appserver instances running on the same box(different jvm) or on some other box in the network.
What you used with iAS 6.5 is not available in 8.1 because sharing sessions between web apps is forbidden by the servlet spec. You should consider repackaging your apps. into a single web app. or using other way of signing/verifying user identity(check Sun Access Manager for example).
Have a look at this thread as well: http://swforum.sun.com/jive/thread.jspa?threadID=100931 -
hi there
i need some help on using property file, please. i have a package that contains many directories and classes. in one the directory, there is a property file: properties. and some of the classes need to access information in the file. how can i use ResourceBundle or Property objects to read the file? this is my guessing :
//code....................................
ResourceBundle.getBundle("D:\\tomc\\wowExchangeProject\\soaptest\\src\\com\\wowgao\\uddi\\db\\properties.properties").getString("implementation");
and:
//code....................................
File f=new File( configFile );
if( f.exists()) {
Properties props=new Properties();
props.load( new FileInputStream(f));
DBClassName = props.getProperty("implementation");
i must use absolute path for the file. what if i need to distribute the package on other machine that does not have D drive. how can change it so that i can deploy it on any machine? thankshi there
i need some help on using property file, please. i
have a package that contains many directories and
classes. in one the directory, there is a property
file: properties. and some of the classes need to
access information in the file. how can i use
ResourceBundle or Property objects to read the file?
this is my guessing :
//code....................................
ResourceBundle.getBundle("D:\\tomc\\wowExchangeProject\
soaptest\\src\\com\\wowgao\\uddi\\db\\properties.proper
ies").getString("implementation");
and:
//code....................................
File f=new File( configFile );
if( f.exists()) {
Properties props=new Properties();
props.load( new FileInputStream(f));
DBClassName =
ame = props.getProperty("implementation");
i must use absolute path for the file. what if i need
to distribute the package on other machine that does
not have D drive. how can change it so that i can
deploy it on any machine? thanksHi!
Let�s say you have the following structure:
- com/props/props.properties
You can use any class inside the classloader that loaded this package to do the following:
InputStrean in = <classname>.class.getResourceAsStream("/com/props/props.properties");
Properties props = new Properties();
props.load(in);
Hope this can help you. Any doubts just ask!
MSB -
Variable for one Dimension based on another Dimension's Property
Hi all,
This is a Acript Logic question.
I have a dimension called P_BUDGET_MODEL. It has a property called PROFIT_CTR.
I also have a dimension called P_PCA.
I would like to have a variable that defines the values of P_PCA based on the values of PROFIT_CTR once the user selected the P_BUDGET_MODEL.
Please note:
1. One value of PROFIT_CTR might yield fiew values of P_PCA based on a well defined logic that I can code in the script using some sort of Concatenation.
2. I want to use the variable in *XDIM_MEMBERSET P_PCA to improve performance.
3. I have authorizations defined both for P_PCA and P_BUDGET_MODEL.
4. I would like to use similar logic to define the time dimension based on the category dimension.
Any ideas?
Kind regards,
AvihayHello Nilanjan,
First of all thanks for your response.
I am not sure I understood. Allow me to elaborate the business scenario.
I have a distributed planning process. Various planners are responsible for various P_BUDGET_MODEL values, which are organized in a hierarchy based on these responsibilities.
When the user selects in a planning package the P_BUDGET_MODEL values, I want to run a logic that will perform calculations. In the logic I need to create data with various values of P_PCA. The values of P_PCA can be derived from the property P_BUDGET_MODEL.PROFIT_CTR.
I also have authorizations on P_PCA and they are synchronized with the authorizations on P_BUDGET_MODEL. The reason I have authorizations on P_PCA is that in various reports I have P_PCA as the display criteria and I do not want users to see all of the values. I also plan to base planning approval processes on this dimension in the future.
Since I have few users basically I needed a simple IF inside my logic, but there is no such statement.
I am a veteran BPS and IP consultant. Such a request was very easy to implement in those tools (using characteristic relations for example and also in FOX). It surprises me that it is so hard to implement in BPC.
Any new ideas?
Maybe you are looking for
-
Exception in thread "main" - error: Please help
I installed the Java 1.4.0 beta on my machine. I configured the JRE and the javac and java commands are responding well. Now I have written very simple classes which are compiling without errors. But now, if I use the java command to run the classes,
-
Hi From a servlet i am forwarding the request to a Jsp page. From that Jsp i want to call another Servlet.Can similar forwarding of Request be done as in case of servlets where we use the Requestdispatcher class.I dont want to perform the action in a
-
Installation problems with Audigy 2 ZS
Hello I have just reinstalled Windows XP SP2 on my computer with necessary updates etc. I have a Soundblaster Audigy 2 ZS and downloaded the latest driver from your homepage. When I click on the installer I get the startup screen and the following me
-
TS1702 Trying to load app and stays at waiting stage
Trying to load an app on iPad but it is stuck at waiting stage when trying to install
-
Hello I'm using JWS and my application uses HttpClient so I need to set HttpClient's proxy properties, I can request to JWS for host and port for proxy but not for user credentials... Does any body knows how to get the proxy's credentials from JWS Da