Doco about Shared Objects.

Hi, ABAPers.
I'm trying to do my deadly best in ABAP Objects, so I'm try to understand the concepts concerning to Shared Objects.
Is there any public document (such as manuals) where I can find documentation about this topic (definitions, usage, and so on)?
I'll regard best answers,
Cheers

Hello Santiago
I forget to mention a tutorial, also written by Thomas Jung, which covers the topic Shared Memory as well.
ABAP Delta Training 6.40
Regards
  Uwe

Similar Messages

  • Confusion about shared objects...

    Hi...
    I'm building an application using JSP/Servlet technology and I've ecountered some behavior that is not that unexpected, but is something I can't seem to figure out how to get around.
    I've been using two reference manuals over the last year, to learn JSP/Servlet development and I'm not sure that either one of them, do a very good job of explaining how to avoid the problem I'm seeing. (Or maybe they do, but I'm just too dense to figure it out.)
    Both are O'Reilly manuals:
    Java Servlet Programming - Jason Humber with William Crawford
    Java Server Pages - Hans Bergsten
    Anyway, I've tried to model my application using a MVC approach.
    My controller servlet UserCtl.java is small and routes requests as a controller should.
    My business logic is in a bean. UserBean.java This object has properties that represent the fields from my UserMaster table and corresponding setter/gettter methods. It also has methods to retrieve an individual user record, insert a record, update a record, delete a record and retrieve a list of records.
    The scenario I'm experiencing is as follows:
    I bring up my application in the browser on two different PC's.
    I display the user list on each PC.
    Now...
    On each PC, I simultaneously click the Update User, selecting user 1 on pc 1 and user 2 on pc 2.
    My application then, creates a record in a lock file, for each user record. This seems to work properly, even during the simultaneous click.
    However...
    When the update form is subseqently displayed, I have a situation where the form on each of the 2 pc's contains the same data.
    I can verify that 2 different lock records were created, indicating that I did not click the same user by accident, however, the data in the form is clearly for only one of the users.
    I've read the sections over and over and I feel like I understand their comments on concurrency and how the condition I'm seeing could occur, however, I've tried many things to overcome this and nothing seems to work.
    Originally, I opened my JDBC database connection at the servlet level. I've subsequently tried doing it when I create the bean in the controller and subsequent to that, creating the connection object within the method that retrieves the user data inside the bean.
    I've tried moving all my code into functions, so that any bean variables would be localized.
    I've creating a bean from the JSP session bean object and then retrieving the record, and putting the bean back into the session object before moving to the update page.
    Note... I've also enclosed my record retrieval code within a synchronize block.
    I'm at a complete loss here. Nothing I do seems to work and I can consistently recreate this condition. Obviously, I can't move forward until I find out how to do this properly.
    I'm disappointed in the Java Server Pages book, because the author encapsulated/wrapped all of his database i/o into his own database management routines.
    This is a terrible practice for an author to perform. I understand the concept of why you would do that, however, it complicates learning the fundamentals first. I say show us how to do it the long way first, then show us how to improve on the implementation. Don't confuse an already complicated process with your own home-grown methodology.
    Anyway... I digress. Can anybody give me any pointers or recommend a good book or web based example, that can show me how to overcome the issue I am encountering? My implementation is a straightforward, simple, approach. I am trying to grasp how this stuff works, without adding in all the extra stuff like tag libraries and XSLT, etc.
    I just need to understand how to write a simple thread-safe application. I'll tackle the other stuff later. Oh... by the way... I have built the simple samples that overcome servlet class level counters that show the result differences between global variables at the servlet instance level versus reporting back localized variable values. I think that JDBC database access and/or bean creation, is more complex than that and that's where my problem is.
    Any comments, pointers, references to simple samples, will be greatly appreciated.
    Thanks,
    Brett

              You do not need a shared files system - that is just for
              convenience. You do need to have identical directory stuctures
              for all instances in the cluster.
              Mike.
              "Tomato Bug" <[email protected]> wrote:
              >
              >hi all,
              > I have a confusion with shared objects in cluster.
              > A cluster needs a shared file system to store
              > configuration
              >files and shared objects. Can I only put the shared things
              >in the
              >shared file system but not put them on the servers in
              >the cluster.
              > Thanks.
              >
              > Tomato.
              

  • Followed the download and install for firefox into my linux home directory. When launching firefox got an error message about a mission shared object. Additional detail to follow.

    When launching firefox got the following error: XPCOMGlueLoad error for file ~/firefox/libxpcom.so libxul.so cannot open shared object file: No such file or directory Couldn't load XPCOM (but file libxul.so is there) what do I do???

    Make sure that you meet the system requirements and have all required libraries installed.
    *http://www.mozilla.com/en-US/firefox/8.0.1/releasenotes/
    *http://www.mozilla.com/en-US/firefox/3.6.24/releasenotes/
    *http://kb.mozillazine.org/Installing_Firefox#Linux
    You can find the latest Firefox releases here:
    *Firefox 8.0.x: http://www.mozilla.com/en-US/firefox/all.html
    *Firefox 3.6.x: http://www.mozilla.com/en-US/firefox/all-older.html

  • About profiling a Shared Object

    Hi, I need to profile a shared object compiled with Gcc/G++ 3.2.
    I have sources for this shared object and can recompile it, but this DLL is executed by an executable of which i don't have sources and most of all I can't recompile it.
    How can I successfully profile my SO?
    I'm using on a "SunOS mxgf 5.8 Generic_117350-12 sun4us sparc FJSV,GPUZC-M" machine.
    Thanks,
    Ema.
    Message was edited by:
    Ema

    The Sun Studio performance tools support profiling gcc/g++
    compiled code. You don't need to have the a.out compiled for
    profiling. It will only affect whether or not you can see source-level
    data for the a.out, not what you can see for methods in the
    shared object. You must use the native libc.so, however.
    I would recommend the latest FCS of the Studio tools, Sun Studio 11.
    You will need to install patch 01, which is available now, or patch 02
    which will be released very soon, since there's a bug relating
    to demangling in the FCS version.
    Marty

  • Exception handling is not working in GCC compile shared object

    Hello,
    I am facing very strange issue on Solaris x86_64 platform with C++ code compiled usging gcc.3.4.3.
    I have compiled shared object that load into web server process space while initialization. Whenever any exception generate in code base, it is not being caught by exception handler. Even though exception handlers are there. Same code is working fine since long time but on Solaris x86, Sparc arch, Linux platform
    With Dbx, I am getting following stack trace.
    Stack trace is
    dbx: internal error: reference through NULL pointer at line 973 in file symbol.cc
    [1] 0x11335(0x1, 0x1, 0x474e5543432b2b00, 0x59cb60, 0xfffffd7fffdff2b0, 0x11335), at 0x11335
    ---- hidden frames, use 'where -h' to see them all ----
    =>[4] __cxa_throw(obj = (nil), tinfo = (nil), dest = (nil), , line 75 in "eh_throw.cc"
    [5] OBWebGate_Authent(r = 0xfffffd7fff3fb300), line 86 in "apache.cpp"
    [6] ap_run_post_config(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x444624
    [7] main(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x42c39a
    I am using following link options.
    Compile option is
    /usr/sfw/bin/g++ -c -I/scratch/ashishas/view_storage/build/coreid1014/palantir/apache22/solaris-x86_64/include -m64 -fPIC -D_REENTRANT -Wall -g -o apache.o apache.cpp
    Link option is
    /usr/sfw/bin/g++ -shared -m64 -o apache.so apache.o -lsocket -lnsl -ldl -lpthread -lthread
    At line 86, we are just throwing simple exception which have catch handlers in place. Also we do have catch(...) handler as well.
    Surpursing things are..same issue didn't observe if we make it as executable.
    Issue only comes if this is shared object loaded on webserver. If this is plain shared object, opened by anyother exe, it works fine.
    Can someone help me out. This is completly blocking issue for us. Using Solaris Sun Studio compiler is no option as of now.

    shared object that load into web server process space
    ... same issue didn't observe if we make it as executable.When you "inject" your shared object into some other process a well-being of your exception handling depends on that other process.
    Mechanics of x64 stack traversing (unwind) performed when you throw the exception is quite complicated,
    particularly involving a "nearly-standartized" Unwind interface (say, Unwind_RaiseException).
    When we are talking about g++ on Solaris there are two implementations of unwind interface, one in libc and one in libgcc_s.so.
    When you g++-compile the executable you get it directly linked with libgcc_s.so and Unwind stuff resolves into libgccs.
    When g++-compiled shared object is loaded into non-g++-compiled executable's process _Unwind calls are most likely already resolved into Solaris libc.
    Thats why you might see the difference.
    Now, what exactly causes this difference can vary, I can only speculate.
    All that would not be a problem if _Unwind interface was completely standartized and properly implemented.
    However there are two issues currently:
    * gcc (libstdc++ in particular) happens to use additional non-standard _Unwind calls which are not present in Solaris libc
    naturally, implementation details of Unwind implementation in libc differs to that of libgccs, so when all the standard _Unwind
    routines are resolved into Solaris version and one non-standard _Unwind routine is resolved into gcc version you get a problem
    (most likely that is what happens with you)
    * libc Unwind sometimes is unable to decipher the code generated by gcc.
    However that is likely to happen with modern gcc (say, 4.4+) and not that likely with 3.4.3
    Btw, you can check your call frame to see where _Unwind calls come from:
    where -h -lIf you indeed stomped on "mixed _Unwind" problem then the only chance for you is to play with linker
    so it binds Unwind stuff from your library directly into libgccs.
    Not tried it myself though.
    regards,
    __Fedor.

  • Add ABAP program: validating package - error accessing shared objects-area

    When adding a new program or browsing the packages in eclipse i get an "error accessing shared objects-area".
    I can edit, save and run existing ABAP reports, however.
    There was a similar problem here, regarding database procedure proxies but the solution doesn't apply to my problem, i guess. The solution was about creating the shared memory area CL_RIS_SHM_AREA. I can't access the memory area and start the constructor, as it doesn't show up on the monitor.
    ADT 2.28
    Eclipse 4.3
    Netweaver 7.31 SP4 -> is this really compatible with ADT 2.28?
    Thanks in advance for helpful hints,
    Julian

    HI Julian,
    if the area doesn't show up in the monitor, please try to start the constructor in transaction SHMM on your own by selecting the icon 'Start Constructor' as shown in the screenshot.
    Choose CL_RIS_SHM_AREA as area, select 'Default Instance' and 'Dialog' as execution mode. Then press 'Create'. Either this works or the system will tell you the issue with the instance creation (e.g. insufficient shared objects memory - see the other solution description).
    Best regards, Sebastian

  • Help with shared objects...again...

    Okay, I've been looking at a really good tutorial for shared objects in AS2, and I think I've gotten the basic concept down of how they work... now the problem lies in just integrating it into what I already have, which is making my brain hurt.  Basically its for a quiz game, which will have a dynamic scoreboard.  I want the scores in the shared object to update when the submit button is pressed, and then have the new values loaded into text boxes.  Displaying the values is going to be the easy part, its just updating them is what my brain doesnt want to wrap itself around.  Here is the array I have at the moment (yes, horribly inefficient, but the last time I actually did any coding before this was over 2 years ago when I was still a computer science major... with all of 4 actual Comp Sci courses under my belt -_-)
    scores= new Array();
    names= new Array();
    insert=function() {
         var newscore;
         var newname;
         newscore=0
         newscore=_global.correct;
         if (newscore > scores[0]) {
             scores[14]=scores[13];
             scores[13]=scores[12];
             scores[12]=scores[11];
             scores[11]=scores[10];
             scores[10]=scores[9];
             scores[9]=scores[8];
             scores[8]=scores[7];
             scores[7]=scores[6];
             scores[6]=scores[5];
             scores[5]=scores[4];
             scores[4]=scores[3];
             scores[3]=scores[2];
             scores[2]=scores[1];
             scores[1]=scores[0];
             scores[0]=newscore;
             names[14]=names[13];
             names[13]=names[12];
             names[12]=names[11];
             names[11]=names[10];
             names[10]=names[9];
             names[9]=names[8];
             names[8]=names[7];
             names[7]=names[6];
             names[6]=names[5];
             names[5]=names[4];
             names[4]=names[3];
             names[3]=names[2];
             names[2]=names[1];
             names[1]=names[0];
             names[0]=newname;
             else if (newscore > scores[1]) {
             scores[14]=scores[13];
             scores[13]=scores[12];
             scores[12]=scores[11];
             scores[11]=scores[10];
             scores[10]=scores[9];
             scores[9]=scores[8];
             scores[8]=scores[7];
             scores[7]=scores[6];
             scores[6]=scores[5];
             scores[5]=scores[4];
             scores[4]=scores[3];
             scores[3]=scores[2];
             scores[2]=scores[1];
             scores[1]=newscore
             names[14]=names[13];
             names[13]=names[12];
             names[12]=names[11];
             names[11]=names[10];
             names[10]=names[9];
             names[9]=names[8];
             names[8]=names[7];
             names[7]=names[6];
             names[6]=names[5];
             names[5]=names[4];
             names[4]=names[3];
             names[3]=names[2];
             names[2]=names[1];
             names[1]=newname;
    Continues all the way down to scores[14]
    Now, if I wanted this to pull data from the shared object, would I just put user_so.score[3]=user_so.score[2] for instance?  Or would I run the array and just update the new valued individually once the array insertion function completes?  THe problem with the latter is that it's not directly accessing the shared object so I'd need to find a way to pull them out into other variables first, and this is about the point where my brain just decides to short out on me and stop working alltogether...yay...
    So yea, any help on this would be much appreciated.
    also, would the array have to be declared within the shared object as well?  If so, how would I do that exactly?  Probably something so simple but the fact that it's shared objects is throwing me off...

    Ok, the shared object WAS working just fine until I had the banner start referencing it.  Then the quiz began giving me syntax errors like crazy, and even when the banner isnt runnit it gives me issues.
    user_so.data.soArray[0]=scores[0];
    user_so.data.soArray[1]=scores[1];
    user_so.data.soArray[2]=scores[2];
    user_so.data.soArray[3]=scores[3];
    user_so.data.soArray[4]=scores[4];
    user_so.data.soArray[5]=scores[5];
    user_so.data.soArray[6]=scores[6];
    user_so.data.soArray[7]=scores[7];
    user_so.data.soArray[8]=scores[8];
    user_so.data.soArray[9]=scores[9];
    user_so.data.soArray[10]=scores[10];
    user_so.data.soArray[11]=scores[11];
    user_so.data.soArray[12]=scores12];
    user_so.data.soArray[13]=scores[13];
    user_so.data.soArray[14]=scores[14];
        _global.player= "Input Name";
        player.text=_global.player;
        _global.correct= 0;
        phrase=" ";
    gotoAndStop (1);
    these are the lines it's telling me I need an on handler for, which I do have, at the very start of the entire code.
    Ive counted the brackets and those seem to line up, but I'll double check again.  The code is on the submit button itself (yes I know it's poor coding form, but this is how I learned it and what I'm used to, and since I'm on a bit of a time schedule now isn't the time to completely re-learn the proper conventions and etiquite of coding in flash).
    on (release) {
        if (user_so.data.tname!=undefined){
            user_so.data.tname = _global.player;
            user_so.data.newscore = _global.correct;
            insert=function() {
        var newscore;
        var newname;
        newscore=0
        newscore=_global.correct;
        if (newscore > scores[0]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=scores[4];
            scores[4]=scores[3];
            scores[3]=scores[2];
            scores[2]=scores[1];
            scores[1]=scores[0];
            scores[0]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=names[4];
            names[4]=names[3];
            names[3]=names[2];
            names[2]=names[1];
            names[1]=names[0];
            names[0]=newname;
            else if (newscore > scores[1]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=scores[4];
            scores[4]=scores[3];
            scores[3]=scores[2];
            scores[2]=scores[1];
            scores[1]=newscore
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=names[4];
            names[4]=names[3];
            names[3]=names[2];
            names[2]=names[1];
            names[1]=newname;
        else if (newscore > scores[2]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=scores[4];
            scores[4]=scores[3];
            scores[3]=scores[2];
            scores[2]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=names[4];
            names[4]=names[3];
            names[3]=names[2];
            names[2]=newname;
            else if (newscore > scores[3]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=scores[4];
            scores[4]=scores[3];
            scores[3]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=names[4];
            names[4]=names[3];
            names[3]=newname;
            else if (newscore > scores[4]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=scores[4];
            scores[4]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=names[4];
            names[4]=newname;
            else if (newscore > scores[5]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=scores[5];
            scores[5]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=names[5];
            names[5]=newname;
            else if (newscore > scores[6]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=scores[6];
            scores[6]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=names[6];
            names[6]=newname;
                else if (newscore > scores[7]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=scores[7];
            scores[7]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=names[7];
            names[7]=newname;
                    else if (newscore > scores[8]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=scores[8];
            scores[8]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=names[8];
            names[8]=newname;
                        else if (newscore > scores[9]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=scores[9];
            scores[9]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=names[9];
            names[9]=newname;
                            else if (newscore > scores[10]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=scores[10];
            scores[10]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=names[10];
            names[10]=newname;
                                else if (newscore > scores[11]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=scores[11];
            scores[11]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=names[11];
            names[11]=newname;
                                    else if (newscore > scores[12]) {
            scores[14]=scores[13];
            scores[13]=scores[12];
            scores[12]=newscore;
            names[14]=names[13];
            names[13]=names[12];
            names[12]=newname;
                                    else if (newscore > scores[13]) {
            scores[14]=scores[13];
            scores[13]=newscore;
            names[14]=names[13];
            names[13]=newname;
                                        else if (newscore > scores[14]) {
            scores[14]=newscore;
            names[14]=newname;
        else {
            user_so.data.tname = _global.player;
            user_so.data.newscore = _global.correct;
            scores[0]=user_so.data.newscore;
            names[0]=user_so.data.tname;
    user_so.data.soArray[0]=scores[0];
    user_so.data.soArray[1]=scores[1];
    user_so.data.soArray[2]=scores[2];
    user_so.data.soArray[3]=scores[3];
    user_so.data.soArray[4]=scores[4];
    user_so.data.soArray[5]=scores[5];
    user_so.data.soArray[6]=scores[6];
    user_so.data.soArray[7]=scores[7];
    user_so.data.soArray[8]=scores[8];
    user_so.data.soArray[9]=scores[9];
    user_so.data.soArray[10]=scores[10];
    user_so.data.soArray[11]=scores[11];
    user_so.data.soArray[12]=scores12];
    user_so.data.soArray[13]=scores[13];
    user_so.data.soArray[14]=scores[14];
        _global.player= "Input Name";
        player.text=_global.player;
        _global.correct= 0;
        phrase=" ";
    gotoAndStop (1);

  • Having problem displaying remote shared objects on flash

    hi
    I am using red5 flash server and at that side creating a shared object called chatSharedObject
    For the client side,I am using openlaszlo platform, but using actionscript 3  classes for the shared object implementation. cilent application is connecting to the shared object on the red5 side successfully(as I see on the red5 logs).
    here is the calling code snippet:
    [CODE]
    <button id="sendButton">send
          <handler name="onclick" method="sendClicked" />
          <method name="sendClicked" args="v=0">
            if (message.text != "") {
        //Debug.write("Message sent!");
        classroot.writeSharedObject(message.text); 
        message.clearText();
        message.setAttribute("text_y", 0);
        </method>
    </button>
    <method name="writeSharedObject" args="message">
    [B]//shared object send method is being called[/B]
        this.send("writeMessage",loginScreen.getUsername(),message);
    </method>
    <!--this method writes the messages to the debug window which will be shown to all users-->
    <method name="writeMessage" args="username, msg">
        //Debug.debug(msg);
        messageArea.addText(username+ " : "+msg+"\n");
    </method>[/CODE]
    When I generate the flash object and try to use this application, nothing is being displayed although there is no problem on this issue on the development enviroment. Problem causes when I try to run the swf10 flash object.
    Is this maybe a flash security issue? Although I have added the corresponding locations as the trusted location on the flash settings manager. Still problem goes on. And I think this is not about the flash player, it might be a special problem about the flash object.
    Couldn't find the solution for a week,
    Any help would be appreciated.
    Thanks in advance 
    Cem

    i can even gointo firefox and chrome and save the shared object. then open my i.e and see that object in the results page. but if i save the shared object in i.e it throws that error on the results page. So i'm pretty sure it must be the flushing of the object. Pasting my save code below:
    function makeResult(evt:MouseEvent):void{
          var flushstatus:String = new String();
          gSo.data.o = o;
          gSo.data.c = c;
          gSo.data.t = t;
          gSo.data.c = v;
          gSo.data.u=uid;
          flushstatus = gSo.flush();
          if (flushstatus != null) {
            switch (flushstatus) {
              case SharedObjectFlushStatus.PENDING: //this is incase the user doesnt have enough space
                gSo.addEventListener(NetStatusEvent.NET_STATUS, onFlushStatus);
                break;
              case SharedObjectFlushStatus.FLUSHED:
                redirect();
                break;
    function onFlushStatus(event:NetStatusEvent):void {
      switch (event.info.code) {
        case "SharedObject.Flush.Success":
          gSo.removeEventListener(NetStatusEvent.NET_STATUS, onFlushStatus);
          redirect();
          break;
        case "SharedObject.Flush.Failed":
          trace ("Shared object storage failed");
          break;
    function redirect() {
      try{
        var request:URLRequest = new URLRequest('../node/2');// i supply a base parameter to the swf so the redirect works
        navigateToURL(request,"_self");
      catch(error:Error){
        trace ("Redirect failed");

  • [SOLVED!] WINE: libSM.so.6: cannot open shared object file= fail

    Greetings,
    So today I decided I'd play an old windows game with my son. It's been a while since I've played  wine game with him... since my last reinstallthat I did just for the S&G to play with the new install method.
    Anyways, I go through the motions, installing wine and all that. Then I go and click on the game to run. Nothing.
    So, I go and try to run it through command line. I get this fun stuff:
    wine H5_Game.exe
    Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
    Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
    Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
    Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
    err:module:load_builtin_dll failed to load .so lib for builtin L"winex11.drv": libSM.so.6: cannot open shared object file: No such file or directory
    err:module:load_builtin_dll failed to load .so lib for builtin L"winex11.drv": libSM.so.6: cannot open shared object file: No such file or directory
    Application tried to create a window, but no driver could be loaded.
    Unknown error (127).
    I search the mighty internets and try many different things. But I cannot seem to find the file that gives "libSM.so.6" or whatever is needed to make this work. So defeated, I come to you to ask that you please give me a leg up here.
    Thanks, in advance, for any and all help!
    Last edited by mythus (2012-10-14 18:16:48)

    Honestly, I did not know about pkgfile.
    So, I installed it and determined that while I have libsm, I was missing lib32_libsm. So installing that fixed my issue with WINE.
    Thanks for the leg up Trilby! Most appreciated!

  • Libclnysh.so.1.0 : cannot open shared object file..

    Hi,
    I was running Oracle for linux successfuly for about 2 weeks
    now.. until from yesterday, I am starting to recieve the
    following error when i run svrmgrl
    libclnysh.so.1.0 : cannot open shared object file : No such file
    or directory
    But, however svrmgrlO works..
    I tried to do a 'genclntsh ' but it gave me the following error..
    ld: cannot open -lnsl: No such file or directory
    I am using
    -SuSE 5.2
    -Kernel 2.0.36 ..
    -patch for glibc installed
    Memory 64 MB
    I just cant understand why it started giving this problem after
    all this time it worked fine.. what could have gone wrong?
    HELP !!
    Shibu Basheer
    null

    Shibu Basheer (guest) wrote:
    : ld: cannot open -lnsl: No such file or directory
    : I am using
    : -SuSE 5.2
    : -Kernel 2.0.36 ..
    : -patch for glibc installed
    : Memory 64 MB
    See LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
    export LD_LIBRARY_PATH
    : I just cant understand why it started giving this problem after
    : all this time it worked fine.. what could have gone wrong?
    : HELP !!
    : Shibu Basheer
    null

  • Shared Objects

    Not sure this is sound programming .. but I offer it up for opinion as it resolved an issue and seemingly works ..
    The issue ..
    Attempting to provide for "bookmarks" in an app w/ the Shared Object ..
    Created the Obj in the maintimeline .. for the life of me I was unable to access the SO from a child MC .. e.g. parent.SharedObject.data. geneated errors
    so I created a class object whose properties is the shared object and it worked ..
    ===== GlobalVars2.as
    package{
    public class GlobalVars2 {
      import flash.net.SharedObject;
      public static var UserStatus:SharedObject = SharedObject.getLocal("UserStatus");
    ===== Parent MC
    import GlobalVars2
    if (GlobalVars2.UserStatus.data.xml == undefined){ // 1st time here, build shared Object
    trace("Doesn't Exist")
    GlobalVars2.UserStatus.data.xml = new XML()
    GlobalVars2.UserStatus.data.Protocol = ""
    GlobalVars2.UserStatus.data.Domain = ""
    GlobalVars2.UserStatus.data.Path = ""
    GlobalVars2.UserStatus.data.ModFile = ""
    GlobalVars2.UserStatus.data.Percent = 0
    GlobalVars2.UserStatus.data.Nav_Played = false
    GlobalVars2.UserStatus.data.M1_Played = false
    GlobalVars2.UserStatus.data.M2_Played = false
    GlobalVars2.UserStatus.data.M3_Played = false
    GlobalVars2.UserStatus.data.M4_Played = false
    GlobalVars2.UserStatus.data.M5_Played = false
    GlobalVars2.UserStatus.data.M6_Played = false
    GlobalVars2.UserStatus.data.M7_Played = false
    SetEnviro() // populate shared object
    GlobalVars2.UserStatus.flush()
    ========== Child MC
    GlobalVars2.UserStatus.data.M7_Played = true

    First of all, I'd recommend to use smpatch utility to update your system. It is available "out of the box" on Solaris 10 and can be installed on Solaris 8 and 9 separately.
    If you don't use smpatch, here are some tips for manual patching process:
    I can only tell you about first two - libthread and libnsl. They both belong to the same package, SUNWcsl:
    $ pkgchk -l -p /usr/lib/libthread.so
    Referenced by the following packages:
    SUNWcsl
    $ pkgchk -l -p /usr/lib/libnsl.so.1
    Referenced by the following packages:
    SUNWcsl
    Current status: installed
    Now, to find out which patches are required, use 'showrev -p' command:
    $ showrev -p | grep SUNWcsl
    Next thing you do is search sunsolve.sun.com for latest versions of patches mentioned by showrev, download them and install with 'patchadd' command. This is rather painful process, so again, I recommend to use 'smpatch'.

  • Large shared objects

    Hi,
    we think about using ABAP shared objects in parallel processing to avoid reading the same data from the DB for every parallel process.
    Currently we have 15MB shared memory configured according to SHMM.
    My Questions:
    1. How do we extend the shared memory? What is the limit?
    2. Does anyone have experience with large shared objects? (1-2GB)
    Thanks in advance
    regards
    Steffen

    Hi Steffen,
    the parameter is abap/shared_objects_size_MB, the limit is defined by your available memory.
    I have seen sizes with 8 GB in production so far.
    Regarding the big shared objects: Carefully think about who is reading and writing and when
    these actions happen. With versioning you can easily have a much higher memory consumption
    since update requests will create a new version while readers attached to the old version
    keep the old version alive. Besides that i haven't seen much trouble with shared objects so far,
    but maybe other people have other experiences.
    Please share your experients with us if you use the shared objects.
    Kind regards,
    Hermann

  • Shared objects initialization - DB_COMMIT?

    Hi,
    this question may be somewhat special:
    In our project we want to minimize database accesses to certain never-changed customizing.
    We implemented a class with static method. In class constructor, we get the customizing from root object of shared memory area.
    We followed the steps outlined in Rich Heilman and Thomas Jung ABAP u2013 Next Generation.
    In the automatic 'constructor' build method of root object they use CALL FUNCTION 'DB_COMMIT'. Altghough this is processed in a separate task and thus should not harm the caller, I do not understand the use of this statement. 
    Also, when reading data, they use a WAIT UP TO 1 SECONDS statement to allow the shared memory object to be in initialized. This causes an implicit database commit which is never wanted. I tried to avoid it by repeating the attach_for_read( ) call until I got the shared memory object. But here I don't know what happens if success never comes.
    Where can I read more about shared memory objects? The online help does not provide too much.
    Thanks in advance,
    Clemens

    The DB_COMMIT is needed for the Auto Build option. The Area Constructor was called automatically becuase of this option and the transactional area only be built until a database commit occurs.
    As far as the wait, the initialization can take a fraction of a second to a few seconds and is done asychronously.  Therefore you need to halt the processing of your application while it takes place.  The ABAP wait statement puts your dialog work process to sleep and therefore is the most efficient way to pass this time.  You could also check within a loop, but you will be contstant consuming the work process and CPU time.  It might be theoretically processing the loop pass thousands of times instead of just one or twice with the WAIT statement.

  • Building Shared Object for LabView

    All;
    I'm trying to build a C++-based shared object to be called from LabView and use SunCC instead of gcc. The compile stage looks like:danny@traveler:~/tubes/dielectric/rod_software/lookup> make -f Makefile.unix suncc=1
    sunCC -I/usr/local/lv71/cintools -I/home/danny/src/NR_C301/code -c -KPIC -m32 -Di686 lookup.cc
    "/home/danny/src/NR_C301/code/interp_1d.h", line 183: Warning: n hides Base_interp::n.
    "/home/danny/src/NR_C301/code/mins_ndim.h", line 103: Warning: n hides Linemethod<extern "C" double(const NRvector<double>&)>::n.
    "lookup.cc", line 176:     Where: While instantiating "Powell<extern "C" double(const NRvector<double>&)>::minimize(const NRvector<double>&)".
    "lookup.cc", line 176:     Where: Instantiated from non-template code.
    2 Warning(s) detected.and the load stage fails like this:sunCC -G -m32 -o lookup.so lookup.o /usr/local/lv71/AppLibs/liblvrt.so.7.1 /usr/lib/libGL.so /usr/lib/libOSMesa.so.6
    /opt/sun/sunstudio12/prod/lib/crtn.o:(.text+0x0): multiple definition of `_etext'
    make: *** [lookup.so] Error 1Is my problem obvious? Is there a simple example on how to build SOs? I found the switch definitions in the Sun documentation, but no good examples yet.
    ...Dan

    If your library links to other shared libraries, use -L options to point to directories other than system directories, and the -l option for the library name after "lib".
    When building shared libraries, you also need to list all system libraries explicity, unfortunately, to ensure your library has the right dependencies.
    You should also add -zdefs to force the linker to complain about unresolved symbols. The default when building shared libraries is not to warn about them.
    You want to be sure you have included all the needed libraries in the link.
    Your link command should look like this :
    sunCC -G -m32 -o lookup.so lookup.o -zdefs \
      -L /usr/local/lv71/AppLibs -llvrt.so.7.1 -lGL.so -lOSMesa.so.6 -lCstd -lCrun -lm -lcYou don't need a -L option for /usr/lib or the directories in the Sun Studio installation. The CC driver knows where to find system libraries.
    That said, I don't think the command line issues are the cause of the multiple definition error.
    Binaries created by Sun C++ are not compatible with binaries created by other C++ compilers like g++. Is liblvrt.so.7.1 a g++ library?

  • The contents in a shared object file

    After compilation of my C++ programs, the makefile generated a shared object file, called libxx.so
    Any way I could list out a contents of object file (*.o) in libxx.so?

    The 'dump' command works well for me. Different options allow you to get library dependecies and function names defined in the library.
    Example:
    dump -Lv libxx.so // Gives some insight into which libraries are linked in.
    The 'ldd' command also gives information about library files.

Maybe you are looking for

  • Why does Yahoo Mail suddenly have problems for me with this browser?

    I was using it fine no problem (except for yahoo's own stuff and maybe some add ons stuff) with the firefox browser itself. although, for some reason, just in the past couple of days, there has been something else. whenever I try to click to move an

  • Imac shutting down by itself

    OK - i'm going to type this as quickly as possible before the problem occurs again and I have to type this again. I bought a Revision B Imac last July. In November, it started to turn off by itself for no reason. (it wouldn't shut down - it would jus

  • No Thumbnails, no fullscreen mode

    Apart from the fact that it is practically impossible to empty the iPhoto trash (I've tried each and any piece of advice suggested here) sometimes fullscreen mode is suddenly no longer available for some pictures (although it was the day before) so t

  • Chromium segfaults and hangs all X11

    Hi, I'm getting this issue frequently (once or twice a day) using chromium. Maybe someone can point me in the right direction. I get random crashes while web surfing with chromium. The whole UI blocks: I can move my mouse pointer, but nothing reacts,

  • After Upgrade, Windows Service will not start automaticly

    I just upgraded from 10.2 to 10.4. When I did the Windows File Service, will not start automaticly. I can start it manually, after a reboot. Any idea on how to fix this?