Forte/Visibroker/C++ question

I am trying to have a C++ client (MSVC++ 5.0) communicate via Visibroker
(3.2) with a Forte Service Object (3.0.G.2) and have had some success.
I have successfully received a sequence (array) of TextData from Forte,
but am having problems with retrieving strings returned from a method
call which returns a sequence of objects.
Here's the scenario:
The Forte service object is called 'InfoSO' whose service object base
class is 'InfoService'. The class InfoService has a method 'getNodes'
whose return type is 'Array of Node'. Upon invoking this method, an
array consisting of one 'Node' whose attribute 'mName' is set to 'Node1'
is returned. When I try to invoke Node's 'getName()' accessor, I get
the following Visibroker exception:
Exception: CORBA::OBJECT_NOT_EXIST
Minor: 0
Completion Status: NO
I have included the Forte wex and C++ files below. In order to compile
the C++ file, I have commented out the line from the C++ header file
(corba1_c.h) generated after invoking idl2cpp as follows:
//typedef CORBA::Long int;
Has anyone had a similar situation and found a solution?
Thanks for any suggestions.
==================== Forte wex file =====================
begin TOOL CompFramework;
includes Framework;
HAS PROPERTY IsLibrary = FALSE;
-- START FORWARD CLASS DECLARATIONS
forward Node;
-- END FORWARD CLASS DECLARATIONS
-- START FORWARD CURSOR DECLARATIONS
-- END FORWARD CURSOR DECLARATIONS
-- START CONSTANT DEFINITIONS
-- END CONSTANT DEFINITIONS
-- START C DATA TYPE DEFINITIONS
-- END C DATA TYPE DEFINITIONS
-- START CLASS DEFINITIONS
class Node inherits from Framework.Object
has public attribute mName: Framework.TextData;
has public method getName: Framework.string;
has public method Init;
has public method setName(input Name: Framework.string);
has property
shared=(allow=off, override=on);
transactional=(allow=off, override=on);
monitored=(allow=off, override=on);
distributed=(allow=on, override=on, default=off);
end class;
-- END CLASS DEFINITIONS
-- START SERVICE OBJECT DEFINITIONS
-- END SERVICE OBJECT DEFINITIONS
-- START CURSOR DEFINITIONS
-- END CURSOR DEFINITIONS
-- START TYPEDEF DEFINITIONS
-- END TYPEDEF DEFINITIONS
-- START METHOD DEFINITIONS
method Node.getName: Framework.string
begin
return mName.Clone(deep=TRUE).Value;
end method;
method Node.Init
begin
super.Init();
mName = new();
end method;
method Node.setName(input Name: Framework.string)
begin
mName = TextData(Name).Clone(deep=TRUE);
end method;
-- END METHOD DEFINITIONS
HAS PROPERTY
CompatibilityLevel = 0;
ProjectType = APPLICATION;
Restricted = FALSE;
MultiThreaded = TRUE;
Internal = FALSE;
LibraryName = 'compfram';
end CompFramework;
begin TOOL Server;
includes CompFramework;
includes Framework;
HAS PROPERTY IsLibrary = FALSE;
-- START FORWARD CLASS DECLARATIONS
forward InfoService;
forward StartUp;
-- END FORWARD CLASS DECLARATIONS
-- START FORWARD CURSOR DECLARATIONS
-- END FORWARD CURSOR DECLARATIONS
-- START CONSTANT DEFINITIONS
-- END CONSTANT DEFINITIONS
-- START C DATA TYPE DEFINITIONS
-- END C DATA TYPE DEFINITIONS
-- START CLASS DEFINITIONS
class InfoService inherits from Framework.Object
has public method getNodes: Framework.Array of CompFramework.Node;
has public method Init;
has property
shared=(allow=off, override=on);
transactional=(allow=off, override=on);
monitored=(allow=off, override=on);
distributed=(allow=on, override=on, default=off);
end class;
class StartUp inherits from Framework.Object
has public method Init;
has public method StartMethod;
has property
shared=(allow=off, override=on);
transactional=(allow=off, override=on);
monitored=(allow=off, override=on);
distributed=(allow=off, override=on);
end class;
-- END CLASS DEFINITIONS
-- START SERVICE OBJECT DEFINITIONS
service InfoSO : Server.InfoService = (DialogDuration = MESSAGE,
Visibility = environment,
FailOver = FALSE,
LoadBalance = TRUE) HAS PROPERTY extended = (UUID =
'8A0E2800-387A-11D2-
BFA0-DEA162A6AA77');
-- END SERVICE OBJECT DEFINITIONS
-- START CURSOR DEFINITIONS
-- END CURSOR DEFINITIONS
-- START TYPEDEF DEFINITIONS
-- END TYPEDEF DEFINITIONS
-- START METHOD DEFINITIONS
method InfoService.getNodes: Framework.Array of CompFramework.Node
begin
Nodes: Array of Node = new();
aNode: Node = new();
aNode.setName('Node1');
Nodes.AppendRow(aNode);
return Nodes;
end method;
method InfoService.Init
begin
super.Init();
end method;
method StartUp.Init
begin
super.Init();
end method;
method StartUp.StartMethod
begin
a : InfoService = InfoSO;
end method;
-- END METHOD DEFINITIONS
HAS PROPERTY
CompatibilityLevel = 0;
ProjectType = APPLICATION;
Restricted = FALSE;
MultiThreaded = TRUE;
Internal = FALSE;
LibraryName = 'server';
StartingMethod = (class = StartUp, method = StartMethod);
end Server;
====================== C++ file ===============================
#include <fstream.h>
#include <iostream>
#include <string>
#include "corba1_c.h"
int
main(int argc, char** argv)
try
CORBA::ORB_var orb = CORBA::ORB_init(argc, argv);
ifstream from("c:\\forte\\etc\\iiopior\\server.ior");
char ch;
std::string ior_str;
while (from.get(ch))
ior_str += ch;
from.close();
CORBA::Object_var obj;
obj = orb->string_to_object( ior_str.c_str() );
Server::InfoService_var InfoSO;
InfoSO = Server::InfoService::_narrow(obj);
CompFramework::sequence_Node* nodes;
nodes = InfoSO->getNodes();
for (CORBA::ULong i=0; i<nodes->length(); i++)
cout << (*nodes)->getName() << endl;
catch(const CORBA::Exception& e)
cerr << e << endl;
return 1;
return 0;
======================== end of files ===================
To unsubscribe, email '[email protected]' with
'unsubscribe forte-users' as the body of the message.
Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

I just knocked up a quick C console "Hello World" program, including
ddeml.h, and got compilation errors.
Using borlands free C++ 5.5 compiler.
I don't think you're supposed to include that include file directly.
I done a search of the standard system include files, and it's already imported in windows.h.
When I include windows.h instead of ddeml.h, it compiles and runs.
I had to force C++ compilation though.
Compile line to compile:
bcc32.exe -P test.c
The -P forces a C++ compile on t C source.
Within my directory, I had a bcc32.cfg file, with my custom compiler switches too... This file contained the following, which can normally be specified on the command line. ( the paths will be different for you )
-I"d:\Compilers\Bcc55\include;d:\Compilers\Borland\CBuilder3\Include\VCL;d:\Compilers\jdk1.3.1_01\include;d:\Compilers\jdk1.3.1_01\include\win32"
-L"d:\Compilers\Bcc55\lib"
-3
-a8
-tWC
-RT
regards,
Owen

Similar Messages

  • Re: (forte-users) Forte and CORBA question

    Hi,
    The discarding the Java variable that references a distributed Forte object
    doesn't cause that the distributed object will be reclaimed. In Forte client
    you can use ReleaseDistReference() of the current partition (task.part) to
    free the remote object. For Java client, you can implement the following
    solution:
    - define a method ReleaseMyObject() in the SO you are using to get the proxy
    to the dist. object. As parameter for it use something that can identify
    your object (attribute).
    - your SO has an array or hashtable with your distributed objects, every new
    object is added to it.
    - in the implementation of ReleaseMyObject() find the object to release in
    the array and call ReleaseDistReference() for it,
    - from the Java client, call the ReleaseMyObject() for the object that is
    not more needed.
    Regards,
    Zenon Adamek
    ----- Original Message -----
    From: Joseph Mirwald <jomirweb.de>
    To: Dave Ortman <dortmanyahoo.com>; 'Forte User Forum'
    <forte-userslists.xpedior.com>
    Sent: Wednesday, March 07, 2001 3:58 PM
    Subject: Re: (forte-users) Forte and CORBA question
    Hello Dave,
    do you use a copy return or copy parameters in this method ?
    If not, then maybe Forte is unable to garbage-collect this object because
    it is forever
    a proxy which only the server-partition may be able to drop it from memory
    (object=NIL).
    Try this and let us know what happens.
    Hope this helps
    Joseph Mirwald
    At 11:49 07.03.01 -0800, Dave Ortman wrote:
    We're attempting to use a Java client to access a
    Forte server. In doing such, we've experienced a
    problem which I hoped somebody could shed some light
    on.
    We've had a Java client calling Forte service objects
    and passing Forte objects back and forth as CORBA
    structs with no problem. However, we have experienced
    some problem obtaining and using remote references to
    distributed objects from the Java client.
    The problem is memory utilization. Each time I obtain
    a reference to a new object, the memory utilization on
    the Forte server jumps up quite a bit (around 100k per
    object on an NT box). Eventually, if I fetch enough
    objects, the server will crash due to lack of memory.
    It seems that Forte never reclaims the memory, even
    though I'm not using (and don't have a handle to) this
    remote objects.
    The objects are very small. In fact, I created a test
    Forte SO with one method, getObject(); which returns a
    distributed object with a single attribute. I then
    have a Java client access the getObject() method
    repeatedly - discarding the reference to the object
    after each iteration. After a short while, the box
    will come down.
    Any thoughts?
    Thanks in advance,
    -Dave Ortman
    --- "Epari, Madhusudhan" <meparioxhp.com> wrote:
    Hi All,
    Following error occurs consistently on a router
    partition for every call to
    the service object but the partition doesn't die or
    crash. I tried bumping
    up the partition memory too. Any thoughts on why
    it's happening?
    Thanks in advance,
    Madhu
    SYSTEM ERROR: Failed to connect or lost connection
    to the
    environment manager
    at FORTE_NS_ADDRESS = <Unknown>. Check that the
    environment
    manager is
    installed at that location. If it is, then check
    to be sure that
    there are
    enough system resources available to support this
    partition.
    Class: qqsp_SystemResourceException
    Error #: [601, 201]
    Detected at: qqdo_NsClient::FindObject at 1
    Error Time: Wed Feb 21 09:30:56
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node forted1 in
    environment
    frtedev.
    SYSTEM ERROR: Attempt to send from a partition
    (C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1)
    that no
    longer exists.
    Class: qqsp_DistAccessException
    Error #: [601, 111]
    Detected at: qqdo_PartitionMgr::SendMsg at
    1
    Error Time: Wed Feb 21 09:30:56
    Distributed method called:
    qqdo_NsServerProxy.FindObject
    (object name
    Unnamed) from partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node
    forted1 in environment
    frtedev
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8])
    in
    application "MWRouting_cl1", pid 18937 on
    node forted1 in
    environment
    frtedev.
    LbRouter::FindMembers - CAUGHT EXCEPTION attaching
    members from
    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:
    forte-users-requestlists.xpedior.com
    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: forte-users-requestlists.xpedior.com--
    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: forte-users-requestlists.xpedior.com

    Why not this:
    while myText.moveToString(' ') do
    myText.ReplaceRange('-', myText.Offset, myText.Offset+1);
    end while;
    or if you prefer verbosity:
    while myText.moveToString(source=' ') do
    myText.ReplaceRange(source='-', startOffset=myText.Offset,
    endOffset=myText.Offset+1);
    end while;
    -----Original Message-----
    From: FatchJeBAM.com [mailto:FatchJeBAM.com]
    Sent: Wednesday, January 12, 2000 2:51 PM
    To: Troy.Burnsvacationclub.com; kamranaminyahoo.com
    Subject: RE: (forte-users) search and replace within a TextData
    How about this?? May have to play with start/end on ReplaceRange as I
    didn't really test this
    Anybody got a better way??
    -- replace space with underscore
    For x in 1 to myTextdata.LengthToEnd() do
    If myTextData.IsSpace() then
    MyTextdata.ReplaceRange('_'. Startoffset=myTextdata.offset,
    endoffset=myTextdata.offset+1);
    End if;
    MyTextdata.MoveNext;
    End for;
    Jerry Fatcheric
    -----Original Message-----
    From: Burns, Troy [mailto:Troy.Burnsvacationclub.com]
    Sent: Wednesday, January 12, 2000 9:40 AM
    To: kamranaminyahoo.com
    Subject: (forte-users) search and replace within a
    TextData
    Hello all,
    I need to search within a textdata object, replacing all
    occurrances of a
    space
    with another character. Can you give a quick code example
    of how I would do
    this?
    Thanks in advance,
    Troy
    Troy Burns
    Marriott Vacation Club Intl.
    E-mail: troy.burnsvacationclub.com
    Phone: (941) 688-7700 ext. 4408
    For the archives, go to: http://lists.sageit.com/forte-users
    and use
    the login: forte and the password: archive. To unsubscribe,
    send in a new
    email the word: 'Unsubscribe' to:
    forte-users-requestlists.sageit.com
    For the archives, go to: http://lists.sageit.com/forte-users and use
    the login: forte and the password: archive. To unsubscribe, send in a new
    email the word: 'Unsubscribe' to: forte-users-requestlists.sageit.com

  • Installing and Uninstalling Forte 6, newbie questions..

    Hi,
    I really did not want to post these questions, but I have had no luck doing this and google hasn't been much help.
    First off, I have a botched install of Forte C 6U2 that needs to be uninstalled, it says to use the uninstall class in /var/sadm/prod/com.sun.forte_developer_6_2 using WebStart, but I have NO idea on how to do that.
    Second, when I finally get it installed (to /usr/Forte) what commands do I need to issue in order to make everything run properly?
    I feel like an idiot for posting this but my Solaris experience has thus far been limited to a shell on my ISP's mail server, and I've finally just burned out trying to do it. A million Thank You's to anyone who replies, I greatly appreciate it.

    This forum is for Sun Java Studio Creator product only... We'll be happy to assist you anytime if you have trouble installing or using this product. :-)

  • Forte for Java question

    By using the JDBC form wizard, I generated a swing program. Along with the java code, there is a form file which looks like an xml file. My question is how to complie and run the java source code without a forte4j IDE?
    Thanks

    One thing is you need the jdbc in your classpath or specify at runtime. Search compiler in the forte help menu - to see options.
    execution : <specify at runtime>
    java -classpath:.;postgresql.org Program
    -- above for postgresql driver residing in same directory as Program.class
    compile : javac Progam.java or javac -classpath .;postgresql.org Progam.java
    Ray

  • Help with Forte: very simple question, please help!

    I recently downloaded the community version of Forte (Sun One) but can't seem to get any new empty class programs to execute properly. I know something is probably not set up right, which is why I really need a little help to get started. Regardless of the code I try to execute, the output error is always:
    "java.lang.NoClassDefFoundError: (name of program)
    Exception in thread "main" "
    Please let me know what I'm not doing right. I would really appreciate anybody's thoughts on this problem because I would love to get Forte working so I can start learning Java. Thanks for your input!

    I would tell you that Forte is not a tool for the beginner. you should look at something simpler. Forte is a fully integrated development environment. I would look at a simple editor like emacs, available at gnu.org. The commands of this editor are quite difficult to get use to.
    As for setting the class varialbe. It depends on the O/s that you are using. win98/me is different than NT/xp. Need to know one or the other before explaining.
    email me if you have question. email address is in my profile.

  • Forte/CORBA/VC++ Question

    Hi Everybody,
    Does any one worked on a C++ application communicating with a Forte Service
    Object via Visibroker. Problem we are facing is we could't able to call a
    Service Object Method which is returning a Array of Objects. Forte
    generating the IDL for the function but when we tried to access the function
    from the C++ client causing CORBA::UNKOWN exception.
    thanks in advance..
    [email protected]
    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, Srinivas
    I do have "a C++ application communicating with a Forte Service Object via
    Visibroker", and also my remote method of the service object is returning an
    Array of Object (to be exact, a subclass of Object). It is hard to figure out
    what happened just from the information you provided here. If you could provide
    more information, it might be helpful.
    CORBA::UNKOWN exception: The explanation is The ORB could not determine the
    thrown exception. The server throws something other than a correct exception
    such as Windows runtime exception.
    By default, when Forte generates an IDL method, it raises an exception either
    GenericException or UserException. You can subclass GenericException or
    UserException to add custom exception classes.
    Shilong Yin
    US West in Denver
    Srinivas Delu wrote:
    Hi Everybody,
    Does any one worked on a C++ application communicating with a Forte Service
    Object via Visibroker. Problem we are facing is we could't able to call a
    Service Object Method which is returning a Array of Objects. Forte
    generating the IDL for the function but when we tried to access the function
    from the C++ client causing CORBA::UNKOWN exception.
    thanks in advance..
    [email protected]
    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/>-
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • Forte Web Enterprise question

    Hello all,
    I'm experiencing a problem passing variables from JavaScript to the Forte
    backend. I am using the following function in my html document.
    <DEFANGED_script language="JavaScript">
    <!--
    function OpenPage(pAccNo,pSrcCode,pExpType)
    // this is just to view the variable's values
    alert("The value of AccNo, Source Code, Exp Type is : "+pAccNo+'
    '+pSrcCode+' '+pExpType);
    window.open('http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=GroupExpo
    sure&TemplateName=GEExpEnq_DirectExposure_Loan.html&pAccountNumber=pAccNo&
    pSourceCode=pSrcCode&pExposureType=pExpType','MyWindow',
    'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,
    resizable=no,copyhistory=no,width=400,height=400');
    //-->
    </script>
    The value of the variables pAccNo, pSrcCode and pExpType are obtained from
    an array (table) that is returned to my html doc. The following code
    opens a window that executes the Forte tag to retrieve the data based on
    the variable values.
    <a
    href="DEFANGED_javascript:OpenPage($$DirectExposure.AccountNumber,'$$DirectExposure
    .kSourceCode','$$DirectExposure.ExposureType')">more details</a>
    The problem is that the URL in the JavaScript passes the variable name
    instead of the variable value. I can successfully open a window directly
    using HTML code passing the variables as in this code below but I want to
    use JS so that I can open different windows depending on the values on the
    table.
    <input type="submit" name="MoreBtn" value="More"
    onClick="window.open('<a href="http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=">http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=</a>
    GroupExposure&TemplateName=GEExpEnq_DirectExposure_Loan.html&pAccountNumbe
    rpAccountNumber=$$DirectExposure.AccountNumber&pExposureType=$$DirectExpos
    ure.ExposureType&pSourceCode=$$DirectExposure.kSourceCode','NewWin','toolb
    ar=no,location=no,status=no,width=400,height=150')">
    Does anyone have any ideas on how to pass variables to the Forte backend
    using JavaScript?
    Thanks in advance.
    Regards
    Aseesh Jairaj
    NBS Bank
    South Africa
    WARNING:
    Any unauthorised use or interception of this email is illegal. If this email
    is not intended for you, you may not copy, distribute nor disclose the
    contents to anyone. Save for bona fide company matters, the BoE Group does
    not accept any responsibility for the opinions expressed in this email.
    For further details please see: http://www.nbs.co.za/emaildisclaim.htm

    Hello all,
    I'm experiencing a problem passing variables from JavaScript to the Forte
    backend. I am using the following function in my html document.
    <DEFANGED_script language="JavaScript">
    <!--
    function OpenPage(pAccNo,pSrcCode,pExpType)
    // this is just to view the variable's values
    alert("The value of AccNo, Source Code, Exp Type is : "+pAccNo+'
    '+pSrcCode+' '+pExpType);
    window.open('http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=GroupExpo
    sure&TemplateName=GEExpEnq_DirectExposure_Loan.html&pAccountNumber=pAccNo&
    pSourceCode=pSrcCode&pExposureType=pExpType','MyWindow',
    'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,
    resizable=no,copyhistory=no,width=400,height=400');
    //-->
    </script>
    The value of the variables pAccNo, pSrcCode and pExpType are obtained from
    an array (table) that is returned to my html doc. The following code
    opens a window that executes the Forte tag to retrieve the data based on
    the variable values.
    <a
    href="DEFANGED_javascript:OpenPage($$DirectExposure.AccountNumber,'$$DirectExposure
    .kSourceCode','$$DirectExposure.ExposureType')">more details</a>
    The problem is that the URL in the JavaScript passes the variable name
    instead of the variable value. I can successfully open a window directly
    using HTML code passing the variables as in this code below but I want to
    use JS so that I can open different windows depending on the values on the
    table.
    <input type="submit" name="MoreBtn" value="More"
    onClick="window.open('<a href="http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=">http://forte_dev/cgi-forte/fortecgi.exe?ServiceName=</a>
    GroupExposure&TemplateName=GEExpEnq_DirectExposure_Loan.html&pAccountNumbe
    rpAccountNumber=$$DirectExposure.AccountNumber&pExposureType=$$DirectExpos
    ure.ExposureType&pSourceCode=$$DirectExposure.kSourceCode','NewWin','toolb
    ar=no,location=no,status=no,width=400,height=150')">
    Does anyone have any ideas on how to pass variables to the Forte backend
    using JavaScript?
    Thanks in advance.
    Regards
    Aseesh Jairaj
    NBS Bank
    South Africa
    WARNING:
    Any unauthorised use or interception of this email is illegal. If this email
    is not intended for you, you may not copy, distribute nor disclose the
    contents to anyone. Save for bona fide company matters, the BoE Group does
    not accept any responsibility for the opinions expressed in this email.
    For further details please see: http://www.nbs.co.za/emaildisclaim.htm

  • Re: (forte-users) Express Question

    Hi,
    I've done it using a dynamic DBSession manager (and dynamic dbsession
    instanciation). But, you need to customize the Express Framework
    (ExpressService.BusinessDBMgr) and modify the select, update, delete, execute
    methods. You need also to maintain the statement cache linked to the DBsession
    and manage the link between a DBsession and a task or use explicit mutex (the
    aim is to have only one task assigned to a DBsession at a time : this should be
    done in the DBSession Manager). If you use Dynamic DBSessions, you will also
    need to add a synchronization to the DBsession Manager.
    If you want to suppress the default DBSession service object, you will need to
    customize the code generation. You should ask the Forte Consulting I think...
    Hope this helps,
    Daniel Nguyen
    Freelance Forte Consultant
    Url : http://perso.club-internet.fr/dnguyen/
    [email protected] a &eacute;crit:
    Has anyone tried replicating the partitions that contain the DBService SOs
    from the Business Model (ie. DBSessions)? We are attempting to do this to
    avoid single-threading access to our database and wondered if anyone had
    done this successfully. Thanks for your help.
    For the archives, go to: http://lists.sageit.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,
    I've done it using a dynamic DBSession manager (and dynamic dbsession
    instanciation). But, you need to customize the Express Framework
    (ExpressService.BusinessDBMgr) and modify the select, update, delete, execute
    methods. You need also to maintain the statement cache linked to the DBsession
    and manage the link between a DBsession and a task or use explicit mutex (the
    aim is to have only one task assigned to a DBsession at a time : this should be
    done in the DBSession Manager). If you use Dynamic DBSessions, you will also
    need to add a synchronization to the DBsession Manager.
    If you want to suppress the default DBSession service object, you will need to
    customize the code generation. You should ask the Forte Consulting I think...
    Hope this helps,
    Daniel Nguyen
    Freelance Forte Consultant
    Url : http://perso.club-internet.fr/dnguyen/
    [email protected] a &eacute;crit:
    Has anyone tried replicating the partitions that contain the DBService SOs
    from the Business Model (ie. DBSessions)? We are attempting to do this to
    avoid single-threading access to our database and wondered if anyone had
    done this successfully. Thanks for your help.
    For the archives, go to: http://lists.sageit.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]

  • Forte and CORBA question

    We're attempting to use a Java client to access a
    Forte server. In doing such, we've experienced a
    problem which I hoped somebody could shed some light
    on.
    We've had a Java client calling Forte service objects
    and passing Forte objects back and forth as CORBA
    structs with no problem. However, we have experienced
    some problem obtaining and using remote references to
    distributed objects from the Java client.
    The problem is memory utilization. Each time I obtain
    a reference to a new object, the memory utilization on
    the Forte server jumps up quite a bit (around 100k per
    object on an NT box). Eventually, if I fetch enough
    objects, the server will crash due to lack of memory.
    It seems that Forte never reclaims the memory, even
    though I'm not using (and don't have a handle to) this
    remote objects.
    The objects are very small. In fact, I created a test
    Forte SO with one method, getObject(); which returns a
    distributed object with a single attribute. I then
    have a Java client access the getObject() method
    repeatedly - discarding the reference to the object
    after each iteration. After a short while, the box
    will come down.
    Any thoughts?
    Thanks in advance,
    -Dave Ortman
    --- "Epari, Madhusudhan" <meparioxhp.com> wrote:
    Hi All,
    Following error occurs consistently on a router
    partition for every call to
    the service object but the partition doesn't die or
    crash. I tried bumping
    up the partition memory too. Any thoughts on why
    it's happening?
    Thanks in advance,
    Madhu
    SYSTEM ERROR: Failed to connect or lost connection
    to the
    environment manager
    at FORTE_NS_ADDRESS = <Unknown>. Check that the
    environment
    manager is
    installed at that location. If it is, then check
    to be sure that
    there are
    enough system resources available to support this
    partition.
    Class: qqsp_SystemResourceException
    Error #: [601, 201]
    Detected at: qqdo_NsClient::FindObject at 1
    Error Time: Wed Feb 21 09:30:56
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node forted1 in
    environment
    frtedev.
    SYSTEM ERROR: Attempt to send from a partition
    (C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1)
    that no
    longer exists.
    Class: qqsp_DistAccessException
    Error #: [601, 111]
    Detected at: qqdo_PartitionMgr::SendMsg at
    1
    Error Time: Wed Feb 21 09:30:56
    Distributed method called:
    qqdo_NsServerProxy.FindObject
    (object name
    Unnamed) from partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node
    forted1 in environment
    frtedev
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8])
    in
    application "MWRouting_cl1", pid 18937 on
    node forted1 in
    environment
    frtedev.
    LbRouter::FindMembers - CAUGHT EXCEPTION attaching
    members from
    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:
    forte-users-requestlists.xpedior.com

    We're attempting to use a Java client to access a
    Forte server. In doing such, we've experienced a
    problem which I hoped somebody could shed some light
    on.
    We've had a Java client calling Forte service objects
    and passing Forte objects back and forth as CORBA
    structs with no problem. However, we have experienced
    some problem obtaining and using remote references to
    distributed objects from the Java client.
    The problem is memory utilization. Each time I obtain
    a reference to a new object, the memory utilization on
    the Forte server jumps up quite a bit (around 100k per
    object on an NT box). Eventually, if I fetch enough
    objects, the server will crash due to lack of memory.
    It seems that Forte never reclaims the memory, even
    though I'm not using (and don't have a handle to) this
    remote objects.
    The objects are very small. In fact, I created a test
    Forte SO with one method, getObject(); which returns a
    distributed object with a single attribute. I then
    have a Java client access the getObject() method
    repeatedly - discarding the reference to the object
    after each iteration. After a short while, the box
    will come down.
    Any thoughts?
    Thanks in advance,
    -Dave Ortman
    --- "Epari, Madhusudhan" <meparioxhp.com> wrote:
    Hi All,
    Following error occurs consistently on a router
    partition for every call to
    the service object but the partition doesn't die or
    crash. I tried bumping
    up the partition memory too. Any thoughts on why
    it's happening?
    Thanks in advance,
    Madhu
    SYSTEM ERROR: Failed to connect or lost connection
    to the
    environment manager
    at FORTE_NS_ADDRESS = <Unknown>. Check that the
    environment
    manager is
    installed at that location. If it is, then check
    to be sure that
    there are
    enough system resources available to support this
    partition.
    Class: qqsp_SystemResourceException
    Error #: [601, 201]
    Detected at: qqdo_NsClient::FindObject at 1
    Error Time: Wed Feb 21 09:30:56
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node forted1 in
    environment
    frtedev.
    SYSTEM ERROR: Attempt to send from a partition
    (C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1)
    that no
    longer exists.
    Class: qqsp_DistAccessException
    Error #: [601, 111]
    Detected at: qqdo_PartitionMgr::SendMsg at
    1
    Error Time: Wed Feb 21 09:30:56
    Distributed method called:
    qqdo_NsServerProxy.FindObject
    (object name
    Unnamed) from partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8]) in
    application
    "MWRouting_cl1", pid 18937 on node
    forted1 in environment
    frtedev
    Exception occurred (locally) on partition
    "CSA_cl0_Part2-router",
    (partitionId =
    C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c:0x1,
    taskId =
    [C61609A0-8270-11D3-88A9-F4D005D0AA77:0x10c5c.8])
    in
    application "MWRouting_cl1", pid 18937 on
    node forted1 in
    environment
    frtedev.
    LbRouter::FindMembers - CAUGHT EXCEPTION attaching
    members from
    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:
    forte-users-requestlists.xpedior.com

  • More specific to two questions

    Hi,
    First of all, many thanks to Rottier, Daniel, Geoff. Your ideas are
    definitely useful.
    Regarding two questions I posted yesterday, I&rsquo;d like to give you more
    background information so that it will make questions more specific.
    Now we have a lot of applications (programs) written in either C, C++,
    Java codes or Forte (maybe other language like VB). Our purpose is to
    integrate all the codes written for the different platforms such as
    Windows NT and UNIX together seamlessly through CORBA or CORBA-IIOP
    (Internet Inter-Object Request Broker Protocol). The most difficulties
    I have met so far are to pass an object by its value. As you know,
    CORBA specifications, version 2, don&rsquo;t support the concept &ldquo;pass object
    by value&rdquo;. But currently, some of CORBA vendors such as Forte and Iona
    (OrbixWeb) do extend the concept &ldquo;pass by reference&rdquo; and support the
    concept &ldquo;pass object by value&rdquo; for Java Mode not for IDL (Interface
    Definition Language) Mode. If we want to integrate all codes together
    without the support of &ldquo;pass object by value&rdquo;, the following question I
    need to answer is the garbage collection in the Forte server side. In
    CORBA IDL mode, I have to set all IsAnchored attributes of all objects
    to TRUE. Can these objects be garbage collected? If yes, how does the
    garbage collection work?
    Please note that the client (C, C++, Java or other language) and the
    server (Forte) are written using different languages (not limited to
    Forte)! The question I posted can be much complicated if the client and
    server are written in the different languages and for the different
    platforms (NT and UNIX) as well as applied to the distributed and
    multithreaded environment.
    To be exact, if one of the multiple remote C++ clients decides not to
    access the objects (not limited to service objects) in the Forte server,
    how does Forte garbage collection know what the client has done
    automatically and garbage collect the object? It is known that CORBA
    does not support garbage collection. Is there any functionality
    provided by Forte to let itself be automatically notified? As we know,
    COM and DCOM do have such kind of functionality. When you integrate
    DCOM with your applications, at both sides (client and server), it is
    DCOM who internally poll the object references periodically. How about
    CORBA and Forte? Forte has integrated IIOP as its own built-in
    component and supported VisiBroker and IONA CORBA products. My guess is
    because Forte has IIOP built in itself (both sides have to run ORB), so
    Forte has the full control over the whole running environment, and can
    monitor the references to the objects, and apply the garbage collection
    to the objects automatically. Is this true? Here are the key words:
    multiple, remote (distributed), different platforms and languages,
    CORBA-IIOP. We should take all of these things into our consideration.
    I did find that there is a big difference between IsAnchored set to TRUE
    and FALSE when I tried to integrate C++ client, Forte server and Java
    client, Forte server. For the C++ client, you have to set IsAnchored
    attributes of all kinds of objects to TRUE. Note that In Forte, the
    service objects and the ordinary objects are treated differently. The
    service objects are created by Compiler or Interpreter. It is
    transparent to the users. The ordinary objects are created at run time,
    garbage collection can be applied to. For Java client, you can either
    set IsAnchored attribute to TRUE or FALSE depending on what you want
    (access the services provided by Forte server side by value or
    reference). This really answers the question: IsAnchored can control
    pass object by value or reference, and really matches what you guys
    talked about in your e-mail. My thoughts are that IsAnchored has
    nothing to do with the garbage collection, otherwise this will disable
    the garbage collection at all! Because I have to set all IsAnchored
    attributes to TRUE at Forte server side for my C++ client, if the
    garbage collection is really based on the IsAnchored attribute, this
    means that the garbage collection is totally disabled for all those
    objects with their IsAnchored attributes set to TRUE! Can anyone
    confirm that? Don&rsquo;t forget that this issue is raised in such
    complicated environment! What I want to clarify is whether Forte does
    provide such a garbage collection mechanism so nice, so smart to
    automatically maintain a persistent object reference table or whatever
    and deal with the garbage collection issue in such complicated
    environment!
    Believe this can make my questions much specific and clear. I&rsquo;d like to
    discuss more details about it.
    Thank you again for your informative ideas.
    Shi-Long, Yin
    US West in Denver
    Tel: 303-624-1305
    e-mail: [email protected]
    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,
    First of all, many thanks to Rottier, Daniel, Geoff. Your ideas are
    definitely useful.
    Regarding two questions I posted yesterday, I&rsquo;d like to give you more
    background information so that it will make questions more specific.
    Now we have a lot of applications (programs) written in either C, C++,
    Java codes or Forte (maybe other language like VB). Our purpose is to
    integrate all the codes written for the different platforms such as
    Windows NT and UNIX together seamlessly through CORBA or CORBA-IIOP
    (Internet Inter-Object Request Broker Protocol). The most difficulties
    I have met so far are to pass an object by its value. As you know,
    CORBA specifications, version 2, don&rsquo;t support the concept &ldquo;pass object
    by value&rdquo;. But currently, some of CORBA vendors such as Forte and Iona
    (OrbixWeb) do extend the concept &ldquo;pass by reference&rdquo; and support the
    concept &ldquo;pass object by value&rdquo; for Java Mode not for IDL (Interface
    Definition Language) Mode. If we want to integrate all codes together
    without the support of &ldquo;pass object by value&rdquo;, the following question I
    need to answer is the garbage collection in the Forte server side. In
    CORBA IDL mode, I have to set all IsAnchored attributes of all objects
    to TRUE. Can these objects be garbage collected? If yes, how does the
    garbage collection work?
    Please note that the client (C, C++, Java or other language) and the
    server (Forte) are written using different languages (not limited to
    Forte)! The question I posted can be much complicated if the client and
    server are written in the different languages and for the different
    platforms (NT and UNIX) as well as applied to the distributed and
    multithreaded environment.
    To be exact, if one of the multiple remote C++ clients decides not to
    access the objects (not limited to service objects) in the Forte server,
    how does Forte garbage collection know what the client has done
    automatically and garbage collect the object? It is known that CORBA
    does not support garbage collection. Is there any functionality
    provided by Forte to let itself be automatically notified? As we know,
    COM and DCOM do have such kind of functionality. When you integrate
    DCOM with your applications, at both sides (client and server), it is
    DCOM who internally poll the object references periodically. How about
    CORBA and Forte? Forte has integrated IIOP as its own built-in
    component and supported VisiBroker and IONA CORBA products. My guess is
    because Forte has IIOP built in itself (both sides have to run ORB), so
    Forte has the full control over the whole running environment, and can
    monitor the references to the objects, and apply the garbage collection
    to the objects automatically. Is this true? Here are the key words:
    multiple, remote (distributed), different platforms and languages,
    CORBA-IIOP. We should take all of these things into our consideration.
    I did find that there is a big difference between IsAnchored set to TRUE
    and FALSE when I tried to integrate C++ client, Forte server and Java
    client, Forte server. For the C++ client, you have to set IsAnchored
    attributes of all kinds of objects to TRUE. Note that In Forte, the
    service objects and the ordinary objects are treated differently. The
    service objects are created by Compiler or Interpreter. It is
    transparent to the users. The ordinary objects are created at run time,
    garbage collection can be applied to. For Java client, you can either
    set IsAnchored attribute to TRUE or FALSE depending on what you want
    (access the services provided by Forte server side by value or
    reference). This really answers the question: IsAnchored can control
    pass object by value or reference, and really matches what you guys
    talked about in your e-mail. My thoughts are that IsAnchored has
    nothing to do with the garbage collection, otherwise this will disable
    the garbage collection at all! Because I have to set all IsAnchored
    attributes to TRUE at Forte server side for my C++ client, if the
    garbage collection is really based on the IsAnchored attribute, this
    means that the garbage collection is totally disabled for all those
    objects with their IsAnchored attributes set to TRUE! Can anyone
    confirm that? Don&rsquo;t forget that this issue is raised in such
    complicated environment! What I want to clarify is whether Forte does
    provide such a garbage collection mechanism so nice, so smart to
    automatically maintain a persistent object reference table or whatever
    and deal with the garbage collection issue in such complicated
    environment!
    Believe this can make my questions much specific and clear. I&rsquo;d like to
    discuss more details about it.
    Thank you again for your informative ideas.
    Shi-Long, Yin
    US West in Denver
    Tel: 303-624-1305
    e-mail: [email protected]
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>

  • How to disable Soundcheck for a single Album

    Hello,
    Soundcheck option in Preferences works pretty good for me, since I shuffle from classical to metal.
    But, inside a single album, say, an Opera which is meant to be fully played w/out pauses, I don't want the volume to be leveled throug Pianissimo and Forte tracks.
    Question:
    Is there any way to disable Soudcheck for a single Album so iTunes does NOT calculate peek levels on its tracks and does not set gain/loss accordingly?
    Or do I need to turn off Soundcheck on the iPod when I want to listen to that particular Album?
    I have tried "Volume level" slider but it sets the overall volume gain of the Album and not the relative level between tracks. Also the "pauseless" option (sorry, I use a localized version) is no solution.
    TIA

    Is there any way to disable Soudcheck for a single Album
    No.
    Or do I need to turn off Soundcheck on the iPod when I want to listen to that particular Album?
    Yes.

  • Re: string to TextData Coercion

    Braja,
    I'm not from Forte, but on the app dev course we discussed this. When you
    call your second line, the first myTD object is 'lost' and garbage
    collected. To stop this happening rather use
    myTD.value = 'Foobar'; // or better still -
    myTD.SetValue('Foobar');
    Regards
    Richard Stobart
    Consultant, ECSoft, UK
    101 Wigmore Street
    London W1H 9AA
    (0171) 355 1101
    -----Original Message-----
    From: braja chattaraj <[email protected]>
    To: [email protected] <[email protected]>
    Date: 26 March 1998 20:34
    Subject: string to TextData Coercion
    I have a question regarding this statement :
    Where it can cause inefficiency is:
    myTD : TextData = new(); // Do an explicit new
    myTD = "Foobar"; // Lose the old TextData and replace
    // with the implicit one.
    The question is, in the above eg., is the assignment operator 'operator
    overloaded' which uses the previous instantiation, or does it cause a
    new instantiation all over again.
    This is a Forte Software implementation question. So, somebody from
    Forte Software Inc. should be able to answer this better. Unless ...
    Regards,
    Braja.
    BRAJA KISHORE CHATTARAJ
    Consultant, Analysts International Corporation.
    Home : 1801, Williamsburg Road, #41H, Durham, NC 27707
    919-403-7296
    Email : [email protected]
    Get Your Private, Free Email at http://www.hotmail.com

    Accepted ! I never knew assignment causes an instantiation.
    SetValue() is the safest option. That's the conclusion.
    Thanks.
    Braja.
    ----Original Message Follows----
    From: [email protected]
    To: [email protected],
    [email protected]
    Date: Fri, 27 Mar 1998 08:00:15 -0600
    Subject: Re: string to TextData Coercion
    Braja,
    Does this answer your question? It prints out "FooBar" and "AAA",
    which,
    to me, indicates that the assignment causes a new instantiation.
    aTD : TextData = New(Value = 'AAA');
    bTD : TextData = aTD;
    aTD = 'FooBar';
    task.lgr.putline(aTD);
    task.lgr.putline(bTD);
    Dustin Breese
    Per-Se Technologies
    BRAJA KISHORE CHATTARAJ
    Consultant, Analysts International Corporation.
    Home : 1801, Williamsburg Road, #41H, Durham, NC 27707
    919-403-7296
    Email : [email protected]
    Get Your Private, Free Email at http://www.hotmail.com

  • String to TextData Coercion

    I have a question regarding this statement :
    Where it can cause inefficiency is:
    myTD : TextData = new(); // Do an explicit new
    myTD = "Foobar"; // Lose the old TextData and replace
    // with the implicit one.
    The question is, in the above eg., is the assignment operator 'operator
    overloaded' which uses the previous instantiation, or does it cause a
    new instantiation all over again.
    This is a Forte Software implementation question. So, somebody from
    Forte Software Inc. should be able to answer this better. Unless ...
    Regards,
    Braja.
    BRAJA KISHORE CHATTARAJ
    Consultant, Analysts International Corporation.
    Home : 1801, Williamsburg Road, #41H, Durham, NC 27707
    919-403-7296
    Email : [email protected]
    Get Your Private, Free Email at http://www.hotmail.com

    Accepted ! I never knew assignment causes an instantiation.
    SetValue() is the safest option. That's the conclusion.
    Thanks.
    Braja.
    ----Original Message Follows----
    From: [email protected]
    To: [email protected],
    [email protected]
    Date: Fri, 27 Mar 1998 08:00:15 -0600
    Subject: Re: string to TextData Coercion
    Braja,
    Does this answer your question? It prints out "FooBar" and "AAA",
    which,
    to me, indicates that the assignment causes a new instantiation.
    aTD : TextData = New(Value = 'AAA');
    bTD : TextData = aTD;
    aTD = 'FooBar';
    task.lgr.putline(aTD);
    task.lgr.putline(bTD);
    Dustin Breese
    Per-Se Technologies
    BRAJA KISHORE CHATTARAJ
    Consultant, Analysts International Corporation.
    Home : 1801, Williamsburg Road, #41H, Durham, NC 27707
    919-403-7296
    Email : [email protected]
    Get Your Private, Free Email at http://www.hotmail.com

  • Re: pattern for persistance management: the solution?

    Thanks to Forte France consulting group and Marc Sonnet (Forte
    France), here is one solution for our problem.
    We don't have test it yet but this seems pretty good.
    thanks for all your replies,
    Corinne Barbat
    ____________________________ S&eacute;parateur R&eacute;ponse ________________________________
    Objet : Re: Bloated clients (was: pattern for persistance management
    Auteur : [email protected] &agrave; _INTERNET
    Date : 23/10/98 00:41
    Geoff,
    Fromhat I've understood of Forte's partitioning behaviour, the only
    way to get rid of b, c, d and e Projects from the client partition is by
    deploying them as a shared library and having the Client dynamically
    load them at run-time. Any other way, including creating a complex
    structure of interfaces to avoid the client referencing the other
    projects directly, or even deploying the Server projects as another
    Application, will not prevent these projects from being included in the
    Client Partition.
    The problem I guess is that when we think along the lines of components
    we immediately associate them with Service Objects. Clearly, it's the
    Project and not the SO which can be classified as a component in Forte.
    The questions I have is : Now that we know how Forte's Partioning
    mechanism works, would it significantly impact the way we partition our
    Apps ? I'm not so sure.
    Eric
    ----Original Message Follows----
    Date: Thu, 22 Oct 1998 14:52:29 -0400
    From: Geoff Puterbaugh <[email protected]>
    To: [email protected]
    Subject: Bloated clients (was: pattern for persistance management)
    Reply-To: Geoff Puterbaugh <[email protected]>
    This topic is of keen interest to me as well. At my customer's
    urging, I wrote a little test application spread across
    four or five projects, each supplying the next..
    a << b << c << d << e
    The projects b,c,d, and e each contain a class and a service
    object based on that class. I partitioned it (a client
    partition and four server partitions for b c d e) and made
    a distribution. Then I looked at the client partition
    and discovered b c d e were projects for it!
    If you code-generate this and run fcompile, you will see
    that all the code for all the projects in the entire chain
    of supplier projects winds up in the client partition.
    To be clear about this, if project e contains a class X,
    you will see the source code for X.init and all other
    X methods in the client partition.
    This appears to be the default behavior, and the open
    question is how to change the default behavior, if that
    can be done.
    All my best,
    Geoff
    P.S. If e uses GenericDBMS as a supplier, it will show up
    in the client too. Of course!
    This is at least my understanding as of today.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    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/>

    Thanks to Forte France consulting group and Marc Sonnet (Forte
    France), here is one solution for our problem.
    We don't have test it yet but this seems pretty good.
    thanks for all your replies,
    Corinne Barbat
    ____________________________ S&eacute;parateur R&eacute;ponse ________________________________
    Objet : Re: Bloated clients (was: pattern for persistance management
    Auteur : [email protected] &agrave; _INTERNET
    Date : 23/10/98 00:41
    Geoff,
    Fromhat I've understood of Forte's partitioning behaviour, the only
    way to get rid of b, c, d and e Projects from the client partition is by
    deploying them as a shared library and having the Client dynamically
    load them at run-time. Any other way, including creating a complex
    structure of interfaces to avoid the client referencing the other
    projects directly, or even deploying the Server projects as another
    Application, will not prevent these projects from being included in the
    Client Partition.
    The problem I guess is that when we think along the lines of components
    we immediately associate them with Service Objects. Clearly, it's the
    Project and not the SO which can be classified as a component in Forte.
    The questions I have is : Now that we know how Forte's Partioning
    mechanism works, would it significantly impact the way we partition our
    Apps ? I'm not so sure.
    Eric
    ----Original Message Follows----
    Date: Thu, 22 Oct 1998 14:52:29 -0400
    From: Geoff Puterbaugh <[email protected]>
    To: [email protected]
    Subject: Bloated clients (was: pattern for persistance management)
    Reply-To: Geoff Puterbaugh <[email protected]>
    This topic is of keen interest to me as well. At my customer's
    urging, I wrote a little test application spread across
    four or five projects, each supplying the next..
    a << b << c << d << e
    The projects b,c,d, and e each contain a class and a service
    object based on that class. I partitioned it (a client
    partition and four server partitions for b c d e) and made
    a distribution. Then I looked at the client partition
    and discovered b c d e were projects for it!
    If you code-generate this and run fcompile, you will see
    that all the code for all the projects in the entire chain
    of supplier projects winds up in the client partition.
    To be clear about this, if project e contains a class X,
    you will see the source code for X.init and all other
    X methods in the client partition.
    This appears to be the default behavior, and the open
    question is how to change the default behavior, if that
    can be done.
    All my best,
    Geoff
    P.S. If e uses GenericDBMS as a supplier, it will show up
    in the client too. Of course!
    This is at least my understanding as of today.
    To unsubscribe, email '[email protected]' with
    'unsubscribe forte-users' as the body of the message.
    Searchable thread archive <URL:http://pinehurst.sageit.com/listarchive/>
    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/>

  • Is the Hardware and Software enough/good for my needs

    I've been reading these forums and a few others and am concerned about somethings and hope some of you can help with these concerns:
    Some background and info:
    1. I've ordered a Dell XPS 720 H2C which as a Intel Core2 Extreme processor QX6700 (3.46GHz,,Overclocked) w/Quad Core Technology and 8MBcache, 4 GB RAM, Dual 768MB NVIDIA GeForce 8800GTX, 1.5TB RAID 0 HDD and a secondary 500GB SATA 3GB/s (No option for a RAID 0 secondary HDD, Windows VISTA ultimate OS.
    2. Will be buying/upgarding the Production Premium CS3 package. (currently only use PhotoShop CS3 and Flash CS3).
    3. I have a Canon XH A1 prosumer video camera (I'm an amature photographer/videographer not a professional. Software is my forte).
    My questions at this moment are to do with hardware software capabilties and workflow.
    My first project (of many I hope) is a make some corporate videos in HDV format for online marketing purposes (kind of like the videos Adobe have for CS3 - http://www.adobe.com/creativelicense/) and possibly to produce DVDs of the same.
    My first question is; Given the hardware and software, will I be able to do what I need? I really hope I don't have to go buy any more hardware. I don't mind having to do one or two more steps. to achieve the end goal (initially).
    Starting with the mode to shoot in (for the purpose stated above), what is my workflow going to be?
    i. What is the best mode to shoot in? (24f, 30f, 60i)
    ii. How do I get the video from the MiniDV tape onto my HDD and then into Premier Pro.
    iii. I need to be able to compisite multiple HDV clips to produce the final cut. Is the hardware and software good for this? On a scale of 1 to 10, what can I expect in terms of productivity.
    I've heard elsewhere that Premier Pro just don't produce true HD quality results. Is this earlier versions.
    What format/compression and dimension is the best for online viewing (I want to retain the HD quaility as far as possible.)
    Thank you all for listening and hope to hear your opinions.
    Shiv.

    Steven,
    Thank you for your quick reply and information there in. The video is very nice too. Great angles and composition.
    So I guess, I'm going to have swap my drive and re-install my OS when the machine arrives.
    I'm not going to be able to capture directly to my desktop (due to poratability reasons). So is there I way in Premire CS3 to uncompress the HDV from the camera and store it in my HDD in uncompressed format? I don't mind having to do this extra step each time if the post production experience is going to be better.
    I've heard a lot about Aspect HD from you and others here as well as other forums. I'm not very video savvy yet and don't understand a lot of the vocabulary used :). I've been to their website and don't get what their products are supposed to give me either (I guess their audience understands exactly what they are saying).
    What I do get is it decompresses the MPEG 2 to saves it to yout HDD for editing purposes. However, I would have thought the Premier Pro CS3 would have that capability as part of the product, no?
    I'd also like to use footage that is not HDV as well as photos/images (composits) but still retain the final cut to be HDV quality. Is this possible and if so, what does it do to the editing experience/performance?
    Will I be able to output the final cut back to my camera's Mini DV tape (without having to buy Aspect HD)?

Maybe you are looking for

  • How can I access my iphone from iphoto or image capture?

    Hello all, I want to import my photos from my iphone (so that i free up the memory) but couldn't do it. When I go on to iPhoto the iPhone doesn't show on my device list and the same happened when I tried image capture. Am I missing something here? Is

  • How do I flag a partition as bootable?

    I'm trying to install Ubuntu on my old Macbook Pro. I can't get it to work. 1. This is what I did first: I boot my portable up as a hard drive. I do this by holding down T upon startup, and see it as a hard drive on my working computer. 2. This is wh

  • How can I use the "create book" feature without having my album photo sequence altered

    I have created an album with photos that are in a particular order for a reason.  I then process to create a book.  The template then rearranges all my photos.  Is there a way to keep them in the original order I set up? 

  • Compressor no longer opens

    I have Final Cut Studio 2 with Compressor 3.05. After many months of perfect performance, recently, when exporting video from Final Cut to Compressor, nothing would happen after I pressed Submit. And if I open Compressor by itself, it stalls on the s

  • Variable name, how to?

    Hi, is there a way in applescript to read a textfile with one word (es. a serial number) and set it as variable inside the script? I need to upload a file on my ftp, and I'm using the "curl -u" command. So I have something like this: "curl -u mysiten