Target moviclip in main timline

I got to moviclips on the timeline (m1_mc, m2_mc), From the
timeline of m1_mc I try to rotate moviclip m2_mc. The script given
below. But it result in this error :
1119: Access of possibly undefined property m2_mc through a
reference with static type flash.display:DisplayObject.
Note that I tried boot ( root...... and _root......) !

So in the end I got it .....

Similar Messages

  • Feature Request: Disable target tabs setting destination for copy paste

    It might have seemed like a good idea at the time but pasting to the targeted layer causes way more problems than it solves. If for instance if I have 10 video tracks which is quite common and wanted to copy and paste a clip to track 10, I have to turn off the target buttons on all 9 tracks below to do that. I do know about option drag which works but sometimes if you're zoomed out you can't get a hold of the clip you are trying to copy. Also I may need one of those layers to help me copy to the right time but now next edit function doesn't stop on them anymore.
    What is important is being able to select which tracks you want PPro to stop at when you hit the next edit keys. For instance if I'm doing a color pass I don't want to stop on audio edits or gfx edits. So If I go through that whole process of turning these things off just to clone a clip I then have to turn them all back on. IMO it doesn't make sense to share these two functions with the target buttons and it's just too tedious in the first place to use the target buttons to set paste destination.
    What I think would make sense would be an option that says copy paste follows target selection or copy paste to same layer. Then the target buttons would mainly effect which media in your timeline you want to focus on which is way more important IMO. This could also be done with an extra keyboard function. IE paste to same track or paste to targeted track and have both functions available.
    Also I think you should have the option of stopping on the ins and outs with the next edit buttons. It's very common to use an in or out as a quick marker for a point in the timeline where there isn't an edit yet.

    Yes I know about alt dragging. Not so great to copy a one second clip in an hour long seq way down. That's the point of it. As it is now it will likely copy to a different track then you want it to so you have to go over and start clicking all kinds of buttons to get the thing to not over write something and maybe / probably all off or all on for the target buttons is nothing close to what you need and you had the buttons how you wanted in the first place. And after you paste you have to click more buttons to set that up again.
    So for one: this method of targeted copy / paste is not efficient at all, and two: sharing two totally different functions for the target buttons is not a good idea. A very simple fix is to provide the option of copy / paste to same tracks.
    This is an opportunity to do it better than FCP because FCP would copy and paste to the same tracks but it had very bad control over which edits the program stopped on using the next / prev edit keys. It's much more efficient to only stop on the video edits and usually one or two tracks when doing a color pass. In FCP you had to disable the audio tracks to get it to ignore them so that you're not pushing the up and down buttons 5 times more than necessary but then you couldn't hear the audio. When you're doing color you want to hit the button once and be on the next shot. With my suggestion you get to focus on exactly what you want and copy / paste isn't a button-fest. This is like golf. Fewer strokes wins!

  • Moving the play head in the main timeline from a button in a movie clip

    I have a movie clip that loads and when it is done playing it has a close button that unloads the movie clip... I want to add code to this button that moves the play head to frame 20 of my main timline using actionScript 3.0

    Tried that but dose not work think its because I am loading the movie this way...
    Play button "playFinal"
    function lastQuestion(event:MouseEvent):void{
         var Info:final1 = new(final1);
         this.stage.addChild(Info);
         Info.x=511
         Info.y=340; }
    So I tried using the Name "Info"
    //example......    MovieClip(Info.root).gotoAndStop(20);
    And I tried the name of the clip in the library "final1"
    //example......    MovieClip(final1.root).gotoAndStop(20);
    Is it because im loading it with actions script instead of having it on the timeline?

  • Producer/consumer architecture over network variables with Real-Time target.

    Hi all,
    I am maintaining a producer/consumer data acquisition program to be deployed on a real-time target. The main code is deployed to and run on the real-time target during experiments, but was having trouble because the program was originally designed to write all experimental data to disk on the real time during acquisition, which puts the whole experiment at the mercy of the hard drive. I am now trying to rework the code so that the host takes care of logging, so that my time-critical loops don't have to wait.
    I am currently using LabVIEW 8.5
    I have two questions:
    First, how can I programmatically call the data-logging subvi on the host so that it runs in parallel with the main vi which runs the experiment and collects data on the real-time? I have attached the test code that I have been working with to figure this out, but it does not run the logging vi continuously in the background. I am aware that there is better functionality for this in newer versions of LabVIEW, but I would prefer not to upgrade unless there is no other option. I would like to be able to run my data-generating vi and have it start the data logging remotely.
    Second, is there a way in the host VI to read values off the network variable using an event structure rather than polling it for updates?
    Any help would be sincerely appreciated!
    Attachments:
    testRemoteLogging.zip ‏124 KB

    VI server
    Mark the target VI as served on the machine on which it will execute and use VI server Call by reference to invoke the served VI.
    This used to be taught as THE way to communicate syncronously with an RT app.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Import of Main and Lookup table in a single Map

    Hey Guys,
    I am developing a Proof of Concept to Import Main and Lookup-Flat in a single Import Map (by using a single excel file).
    Below is my Table structure:
    Main Table: Customer
    --->Customer_Number (Text,Unique Field, Display Field)
    --->Sales_Area (Lookup Flat)
    Lookup Table: Sales_Area
    Sales_Area_ID (Text,Unique Field,Display Field)
    Sales_Area_Desc (Text,Display Field).
    The import File (excel) has below attributes:
    Customer_Number,Sales_Area_ID,Sales_Area_Desc.
    When i start both Main Table and Lookup tables are empty (there is no data in Data Manager for either of the tables)
    Now in the Import Map, i selected source as the excel file and target as the Main table.
    I did mapping of Customer_Number as usual after that I created a compound field for Sales_Area_ID+ Sales_Area_Desc and did the mapping of this compound field. then did the mapping for Sales_Area_ID and Sales_Area_Desc.
    Now since there is no data in lookup table, i select the "Add" button in the "Value Mapping" section. when i execute this map, it works perfectly and data is loaded in both the Main table and lookup table but if a new value comes in the excel(a value which does not yet exist in lookup table), the map fails, when i open it , it says that i need to redo the Value Mapping, again i click on "Add" button and it starts working. So basically the Import Map fails whenever i get a value in excel which does not yet exist in Lookup table.
    Now my question is, is there a way to automate my import map, i thought clicking on "Add" button will take care of all the lookup values which are not already present.
    Can anyone please help me in this regard.
    Thanks
    Saif

    Hi Saif,
    You can try the following option.
    Right click on the lookup filed/compound filed in destination fields, and select the option 'SET MDIS Unmapped Value Handling' as 'ADD'.
    Cheers,
    Cherry.

  • Access Variable on Main Timeline from Package

    I have set a variable on the root level timeline.  I have a movieclip that calls a package and within that package I want to call or access the main timline variable.  I have tried MovieClip(root) currentLabelName or just calling currentLabelName and none of that works.  Is there another way to be able to access it?

    I agree with dmennenoh that it's probably best not to mix the two, but let's start out assuming you do mix the two, and also the following
    Your instance is called assessment5Q
    You have a frame script on the same frame with the label you want to get.
    Your frame script might look like:
    assessment5Q.loadQuestions(currentFrameLabel);
    Your Assessment5Q Class would have a method that looks like:
    public function loadQuestions(label:String):void {
        //do your current load here
    Now that your Class is set up to work from a framescript, it will work from a Document Class without modification. However, it sounds like your instance doesn't exist on frame 1 of the main timeline, so you need to make sure you don't try to reference your instance before it exists. So we're going to make use of a getter/setter pair, which will allow Flash to create your instance on the timeline per usual, but when the setter is triggered you can then do things with the new instance. Your main document code would include code something like this:
    protected var _assessment5Q;
    public function get assessment5Q():Assessment5Q {
         return _assessment5Q;
    public function set assessment5Q(value:Assessment5Q):void {
         If (_assessment5Q != value) {
              _assessment5Q=value;
              If (_assessment5Q) {
                   _assessment5Q.loadQuestions(currentFrameLabel);
    Note that even this better way is not a way I'd recommend if you expect your project to take longer than a couple of days to develop or be maintained over more than a couple of weeks. It's not good practice to have a single Class that has the responsibility for both getting the data and displaying it. If you only have a single question format, you may be able to get away with having a Class that loads the questions and makes questions from it. Then you can pass the loaded questions into your View as above (instead of using a method that takes a string, you can use a method that takes an array of questions).
    It just so happens that I build Assessments as the vast majority of the work I do, and I have it broken down where there is a Class that has some number of Classes inside it that know how to build individual question types. That Class gets XML handed to it (from a different Class that just handles loading XML) and then it figures out which child Class knows how to build each question type and hands a snippet of XML to the appropriate child. Once all the questions are created, a set of questions will be handed into a View that can show between 1 and 9 questions. It does this by having individual question views on stage that, again, know about displaying specific types of questions. I'm not saying that you need to go whole hog into creating such a scalable design as I have. I'm just suggesting that your product is more likely to stand the test of time if you break things into smaller pieces that then cooperate. That way if the bigger pieces aren't quite right, you can put the smaller pieces together in a different way.

  • PRO*C MAKE 화일의 비밀

    제품 : PRECOMPILERS
    작성날짜 : 1995-11-21
    Understanding and Modifying Precompiler and OCI Makefiles
    Note: This bulletin is also posted under the PCC category (#104220.448).
    In order to successfully create a program using the Oracle Precompilers (Pro*C,
    Pro*COBOL, Pro*FORTRAN, Pro*Ada, etc.) you need to precompile, compile, and
    link your program with the Oracle libraries. On Unix systems, the easiest way
    to do this is to use the 'make' utility. Make is a unix command that enables
    you to manipulate files automatically. It works by way of a makefile, which is
    a file written in a language that 'make' can understand. Oracle provides
    makefiles for precompiling, compiling, and linking your programs. They can be
    found under the $ORACLE_HOME subdirectory, in
    $ORACLE_HOME/proc/demo/proc.mk for Pro*C,
    $ORACLE_HOME/procob/demo/procob.mk for Pro*COBOL,
    $ORACLE_HOME/profor/demo/profor.mk for Pro*FORTRAN, and
    $ORACLE_HOME/proada/demo/proada.mk for Pro*Ada.
    All of the makefiles are very similar in terms of the macros that they define,
    and how they are used. The remainder of this bulletin will use Pro*C and
    proc.mk as an example, but the concepts discussed here are also relevant to the
    other languages.
    This bulletin is divided into 6 sections and two appendecies:
    I. How to use proc.mk for version 1.4, 1.5, and 1.6 of Pro*C
    II. How to use proc.mk for version 2.0 of Pro*C
    III. How does proc.mk work?
    IV. Modifying proc.mk to change the precompile and compile options, and to
    add your own libraries
    V. Modifying proc.mk for a program which has more than one source module
    VI. How to link OCI programs using proc.mk or oracle.mk
    VII. Some issues about linking
    Appendix A. Source code for the multiple module example
    Appendix B. List of useful makefile macros
    I. How to use proc.mk for version 1.4, 1.5, and 1.6 of Pro*C
    The makefile for these Pro*C versions is set up to create an executable from a
    program that is in a single source file. To use it, copy proc.mk from
    $ORACLE_HOME/proc/demo into the directory which contains your source code.
    This directory also contains electronic versions of the sample programs found
    in the "Pro*C Supplement to the Oracle Precompilers Guide". Once you have
    copied proc.mk into your directory, you can create your executable by just
    typing 'make -f proc.mk <program name>', where <program name> is
    the file containing your code, without the .pc extension. For example, if your
    code is in my_prog.pc, you would use 'make -f proc.mk my_prog':
    unix$ make -f proc.mk my_prog
    /u02/7016/bin/proc iname=my_prog.pc ireclen=132 oreclen=132 select_error=no
    Pro*C: Release 1.5.10.1.0 - Production on Thu Sep 1 15:09:47 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling my_prog.pc
    /usr/5bin/cc -I. -O -Bdynamic -L/u02/7016/lib -o my_prog my_prog.c /u02/7016/li
    b/libsql.a /u02/7016/lib/osntab.o -lsqlnet -lora /u02/7016/lib/libpls.a -lsqlne
    t -lnlsrtl -lcv6 -lcore -lnlsrtl -lcv6 -lcore -lm
    The above example was done on a Sun with Oracle 7.0.16.6 and Pro*C 1.5.10.1.0.
    Your output may look a little different if you are on a different unix system.
    After running this command, several files should have been created in the
    current directory. my_prog.c is the C output from the precompiler.
    my_prog.lis is also generated by the precompiler, and is the listing file that
    gives you information about the precompilation. The executable will be called
    my_prog.
    II. How to use proc.mk for version 2.0 of Pro*C
    proc.mk for version 2.0 is much more generic. It is designed to link together
    programs that are in multiple modules, without modification. Again, the
    makefile itself is found in $ORACLE_HOME/proc/demo, along with the sample
    programs. In order to use it for a single module, you would use
    'make -f proc.mk EXE=<program name> OBJS=<program name>.o' (after copying
    proc.mk to your own directory). For example:
    unix$ make -f proc20.mk EXE=my_prog OBJS=my_prog.o
    /u03/oracle7.1/bin/proc iname=my_prog.pc
    Pro*C: Release 2.0.3.0.0 - Production on Thu Sep 1 15:55:26 1994
    Copyright (c) Oracle Corporation 1979, 1994. All rights reserved.
    System default option values taken from: /u03/oracle7.1/proc/pmscfg.h
    /usr/5bin/cc -I. -O -I/u03/oracle7.1/proc/lib -c my_prog.c
    /usr/5bin/cc -Bdynamic -L/u03/oracle7.1/lib -o my_prog my_prog.o -lsql /u03/ora
    cle7.1/lib/osntab.o -lsqlnet -lora -lsqlnet -lora -lnlsrtl -lcv6 -lcore -lnls
    rtl -lcv6 -lcore `cat /u03/oracle7.1/rdbms/lib/sysliblist`
    This will generate the same files as the previous example, plus my_prog.o,
    which is an object file containing the compiled form of your code. It is then
    linked with the Oracle libraries to create the executable.
    III. How does proc.mk work?
    To understand proc.mk, first we need to go into some details about how a
    makefile works. Makefiles are usually made up of two kinds of entries -
    targets and macro definitions.
    The general format of a target entry is
    <target>: <target1> <target2> ... <targetn>
    <command1>
    <command2>
    <commandm>
    Note that there are TABS, not spaces, before each of the <command> lines.
    This entry tells make how to create <target> from <target1> through
    <targetn>. To do this, make just needs to execute <command1> through
    <commandm>. For example, the target entry
    my_prog.c: my_prog.pc
    proc iname=my_prog.pc ireclen=132 oreclen=132
    tells make that to create my_prog.c, if my_prog.pc exists in the current
    directory, it just has to run 'proc iname=my_prog.c'. This target rule will be
    applied when 'make -f <makefile> my_prog.c' is issued from the unix prompt.
    Targets can be chained together as well. For example if you had the target
    entry
    my_prog.o: my_prog.c
    cc -c my_prog.c
    in addition to the one above, then make would be able to create my_prog.o from
    my_prog.pc by precompiling and compiling. Note that these two entries could
    have been combined into
    my_prog.o: my_prog.pc
    proc iname=my_prog.pc ireclen=132 oreclen=132
    cc -c my_prog.c
    which would have the same effect.
    There are also some special formats for targets, which don't depend on specific
    file names. For example, the following sequence of targets creates an object
    file from any .pc file:
    .SUFFIXES: .pc .c .o
    .pc.o:
    proc iname=$*.pc ireclen=132 oreclen=132
    cc -c $*.c
    Note the special syntax here. The .SUFFIXES rule tells make what suffixes
    to look for. The .pc.o rule (which has no dependencies) explains how to get
    from a .pc file to a .o file. Inside the commands, $* will evaluate to the
    filename (without the extension) of whatever file is currently being worked on.
    If we put the above example into a file (called example.mk) and run it, we get:
    unix$> make -f example.mk my_prog.o
    proc iname=my_prog.pc ireclen=132 oreclen=132
    Pro*C: Release 1.5.10.1.0 - Production on Mon Sep 19 15:53:22 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling my_prog.pc
    cc -c my_prog.c
    unix$
    Notice that $* has been replaced with my_prog in the proc and cc commands.
    Also note that we had to type 'my_prog.o' on the command line. This is because
    the target rule was '.pc.o:'. If it was just '.pc:', then we wouldn't have
    needed the .o extension on the command line. But then make wouldn't know that
    this command creates a .o file. Make is smart enough to put together a .pc.c
    and a .c.o rule to create a .o file from a .pc file.
    The other kind of makefile entry is a macro definition. They usually look
    like:
    MACRONAME=macrotext
    This defines the macro MACRONAME to be macrotext. Whenever make sees
    $(MACRONAME) (Note the parenthesis), it will be replaced by macrotext. For
    example,
    PROFLAGS=ireclen=132 oreclen=132
    my_prog.c: my_prog.pc
    proc iname=my_prog.pc $(PROFLAGS)
    will accomplish the same thing as the first example in this section.
    '$(PROFLAGS)' will be replaced by 'ireclen=132 oreclen=132' (without the
    quotes).
    Macros can be defined more than once in a makefile. In that case, the
    definition that is last (furthest from the start) will be the one used for the
    entire file. Previous definitions are ignored.
    IV. Modifying proc.mk to change the precompile and compile options, and to
    add your own libraries
    NOTE: Be careful of changing too many options, especially the compile and/or
    link options. In many cases, changing these to values that are different from
    the supplied ones in proc.mk can cause problems. Contact Worldwide Support if
    you have questions about any of the compile or link options used in our default
    supplied makefiles.
    Consider this section of the makefile for Pro*C 1.5.10:
    # General suffix rule to build executables from .pc and .c files.
    # Usage :
    # make -f proc.mk USERID=<user/pass> <prog>
    # For example to build an executable from a Pro*C source file named 'abc.pc'
    # using scott/tiger for the ORACLE account name. The make command line will
    # be:
    # make -f proc.mk USERID=scott/tiger abc
    # Note: scott/tiger is the default account/password, so that you could
    # also use the following command line:
    # make -f proc.mk abc
    # The executable will be named 'abc'.
    .pc:
    -$(PROC) iname=$*.pc $(PROFLAGS)
    @$(ECHO) $(CC) $(CFLAGS) $(LDFLAGS) -o $* $*.c $(PROLDLIBS)
    .c:
    @$(ECHO) $(CC) $(CFLAGS) $(LDFLAGS) -o $* $*.c $(PROLDLIBS)
    These two target rules tell make how to precompile and compile. See the
    previous section for details on how these work. When you run the make, what
    actually gets executed are the commands under '.pc:'. The first line is the
    precompile, and the second is the compile. If you want to change the
    precompiler options, change the PROFLAGS macro. By default, it is set by
    PROFLAGS=ireclen=132 oreclen=132 select_error=no $(SQLCHECK) $(PROUSER)
    If you want to add the option maxopencursors=20, to change the initial size of
    the precompiler cache, you would add it to this line:
    PROFLAGS=ireclen=132 oreclen=132 select_error=no maxopencursors=20
    Note that I have removed the SQLCHECK and PROUSER macros. They are not
    defined by default, so they do not evaluate to anything. You can define them
    if you like, which can be used to add additional options such as SQLCHECK and
    USERID. See the precompiler manual for more information about the available
    precompiler options.
    Similarly, you can set compile options with CFLAGS and link options with
    LDFLAGS. Appendix B lists other macros used by proc.mk which you may find
    useful.
    In order to add additional libraries to the link, you can add them to the
    PROLDLIBS macro. proc.mk for 1.5.10 (on the Sun) defines this macro as:
    PROLDLIBS= $(LIBSQL) $(TTLIBS)
    LIBSQL and TTLIBS are other macros previously defined. You can add your own
    libraries to this macro to add them to the link:
    PROLDLIBS= $(LIBSQL) $(TTLIBS) my_lib1.o my_lib2.o
    Better results are obtained if you add your own libraries either after or
    before the Oracle libraries. Putting your libraries in between LIBSQL and
    TTLIBS can cause undefined symbols.
    V. Modifying proc.mk for a program which has more than one source module
    Many complicated programs are contained in more than one source module, unlike
    the samples. Some of these modules would contain only C functions, and thus
    have .c extensions. But the rest would contain embedded SQL as well, and
    consequently have .pc extensions. How would you compile and link in a
    situation such as this? In the remainder of this section, I present one
    solution.
    This solution uses the following files, which are included in Appendix A:
    File Functions Contained in the File Functions Called by this File
    main.c main db_connect, print_names,
    db_disconnect
    connect.pc db_connect, db_disconnect, none
    sqlerror
    print_names.pc print_names none
    main.h db_connect, db_disconnect,
    print_names, sqlerror (This is the header file)
    For Pro*C 2.0, proc.mk can compile these together by using the EXE and OBJS
    macros. The first target in the makefile (which will be executed if you don't
    specify a target on the make line) looks like:
    build: $(OBJS)
    $(CC) $(LDFLAGS) -o $(EXE) $(OBJS) $(PROLDLIBS)
    There are also default rules that tell make how to get from a .pc file to a .o
    file:
    .SUFFIXES: .exe .o .c .pc
    .pc.c:
    $(PROC) $(PROFLAGS) iname=$*.pc
    .pc.o:
    $(PROC) $(PROFLAGS) iname=$*.pc
    $(CC) $(CFLAGS) $(PROCINC) -c $*.c
    .c.o:
    $(CC) $(CFLAGS) $(PROCINC) -c $*.c
    So you can define the EXE macro to be the name of the executable, and the OBJS
    macro to be the object files used. You can either do this in the makefile
    itself (and then run it with 'make -f proc.mk') or, define them on the command
    line. To compile the example, use:
    make -f proc.mk EXE=main OBJS="connect.o print_names.o main.o"
    Note the double quotes around the object lists. This is to pass the spaces as
    part of the macro.
    For Pro*C 1.5, consider the following, which should be added to the end of the
    makefile:
    OBJECTS=main.o print_names.o connect.o
    main: $(OBJECTS)
    @$(ECHO) $(CC) $(CFLAGS) -o main $(OBJECTS) $(PROLDLIBS) \\
    $(CLIBS)
    main.o: main.c main.h
    @$(ECHO) $(CC) $(CFLAGS) -c main.c
    connect.o: connect.pc main.h
    @$(ECHO) $(PROC) iname=connect.pc $(PROFLAGS)
    @$(ECHO) $(CC) $(CFLAGS) -c connect.c
    print_names.o: print_names.pc main.h
    @$(ECHO) $(PROC) iname=print_names.pc $(PROFLAGS)
    @$(ECHO) $(CC) $(CFLAGS) -c print_names.c
    If you are not on a Sun as I am, the commands under connect.o and print_names.o
    should be the same as those under the '.pc:' target. Under main.o, the command
    should be the same as that under '.c:'. Compare the commands given here to
    those from my proc.mk, shown at the beginning of section IV.
    Again note that there are TABS, not spaces, before the command lines for
    precompilation and compilation, in accordance with the makefile format. With
    the above lines added to the end of proc.mk, we can create the executable by
    issuing 'make -f proc.mk main'. The output I get when running for the first
    time (no additional files beyond the original 4 exist) is:
    technique /home/csupport/surman/make> make -f proc.mk main
    /usr/5bin/cc -I. -O -c main.c
    /u02/7016/bin/proc iname=print_names.pc ireclen=132 oreclen=132 select_error=no
    Pro*C: Release 1.5.10.1.0 - Production on Wed Sep 21 17:37:02 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling print_names.pc
    /usr/5bin/cc -I. -O -c print_names.c
    /u02/7016/bin/proc iname=connect.pc ireclen=132 oreclen=132 select_error=no
    Pro*C: Release 1.5.10.1.0 - Production on Wed Sep 21 17:37:06 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling connect.pc
    /usr/5bin/cc -I. -O -c connect.c
    /usr/5bin/cc -I. -O -o main main.o print_names.o connect.o /u02/7016/lib/libsql
    .a /u02/7016/lib/osntab.o -lsqlnet -lora /u02/7016/lib/libpls.a -lsqlnet -lnlsr
    tl -lcv6 -lcore -lnlsrtl -lcv6 -lcore -lm -lm
    After running as above, a number of additional files are created. The
    files connect.lis and print_names.lis are generated by the
    precompiler, along with connect.c and print_names.c. Each of the .c
    files is then compiled with the '-c' option to create a .o file. So
    we get main.o, connect.o, and print_names.o. Finally, the object
    files are linked together to form the final executable, which is
    called 'main'.
    What are all these files? The .c extension signifies a file
    containing pure C code. The main program is in main.c to start with.
    The .pc extension signifies a file containing C code with embedded
    SQL, suitable for precompiling. The precompiler generates the .c file
    from the .pc file. The .lis extension signifies a listing file, also
    generated by the precompiler. It contains a trace of the
    precompilation attempt. Files with the .o extension are library
    files. They contain compiled code, and can be linked together into
    one executable. Different compilers can generate .o files, created
    from source files written in different languages. All of the .o files
    can be linked together, regardless of the original source language.
    main.h is the header file. This contains external definitions for
    the functions referenced by each module. This is necessary so the compiler
    will understand the correct prototype for each function. Note that
    it is referenced on the target line for each file. This is so
    the files are recompiled when the header file is changed.
    The linking is done by the final cc command, located under the make
    target main:
    @$(ECHO) $(CC) $(CFLAGS) -o main $(OBJECTS) $(PROLDLIBS) \\
    $(CLIBS)
    The only new thing here is the -o option. This is an option to the
    cc command which tells the compiler the name of the output file. In
    this case, it is called 'main'. If no output file is specified, the
    compiler usually calls it 'a.out'.
    Using this method has the advantage that make will only compile those files
    which need to be changed. For example, consider the main target:
    main: $(OBJECTS)
    @$(ECHO) $(CC) $(CFLAGS) -o main $(OBJECTS) $(PROLDLIBS) \\
    $(CLIBS)
    Whenever one of $(OBJECTS) (in this case, the object files created
    by compilation) has changed, make will run the commands under this
    target (in this case, the link command).
    What this means is that only those files which have been changed will
    be recompiled. If you change print_names.pc (try "touch print_names.pc"
    from the unix prompt) and run make, you will get only:
    unix$ touch print_names.pc
    unix$ make -f proc.mk main
    /u02/7016/bin/proc ireclen=132 oreclen=132 select_error=no iname=print_names.pc
    Pro*C: Release 1.5.10.1.0 - Production on Wed Sep 21 17:48:48 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling print_names.pc
    /u02/7016/bin/proc iname=print_names.pc ireclen=132 oreclen=132 select_error=no
    Pro*C: Release 1.5.10.1.0 - Production on Wed Sep 21 17:48:50 1994
    Copyright (c) Oracle Corporation 1979, 1992. All rights reserved.
    Precompiling print_names.pc
    /usr/5bin/cc -I. -O -c print_names.c
    /usr/5bin/cc -I. -O -o main main.o print_names.o connect.o /u02/7016/lib/libsql
    .a /u02/7016/lib/osntab.o -lsqlnet -lora /u02/7016/lib/libpls.a -lsqlnet -lnlsr
    tl -lcv6 -lcore -lnlsrtl -lcv6 -lcore -lm -lm
    unix$
    Notice that the only thing that was done here was to precompile and
    compile print_names.pc, generating print_names.o. Then, since main
    depends on print_names.o, the final cc command (which links the final
    executable) was also done. So the same make command will only
    recompile those modules which have changed. This can be significant
    when linking in many modules, some of which can take a long time to
    compile. For more information on the make command, I suggest that you
    look at a Unix or make manual. One such book is "Managing Projects
    with Make", by Andrew Oram and Steve Talbott.
    Note that you can create suffix rules for the proc.mk for 1.5, similar to the
    ones for Pro*C 2.0. By using suffix rules, it is possible to shorten this
    example. The commands for each of the .pc files are identical. Rather
    than having a separate entry for each one, you can create general
    suffix rules that tell make how to create a .o file from a .pc file, for
    example. For more information on how to do this, I recommend that you
    consult a book or tutorial on make, such as the book referenced above.
    VI. How to link OCI programs using proc.mk or oracle.mk
    The libraries used to link OCI programs are very similar to the libraries used
    to link Pro*C programs. The main difference is that OCI programs link with
    libocic.a, and Pro*C programs link with libsql.a. Both can be found under
    $ORACLE_HOME/lib for Oracle7, and $ORACLE_HOME/rdbms/lib for version 6.
    For Oracle7, you can use either proc.mk or oracle.mk to link OCI code.
    oracle.mk is a makefile found in $ORACLE_HOME/rdbms/lib, and is used mainly for
    linking various options into the Oracle RDBMS itself, as well as for linking
    the Oracle executables. There are also targets in oracle.mk which will link
    the sample OCI programs cdemo1.c through cdemo3.c. Following are these
    targets, taken from the oracle.mk for 7.0.16 on Sun:
    OCILDLIBS= $(LIBOCIC) $(TTLIBS) $(LLIBCORE)
    INCLUDE= -I$(ORACLE_HOME)/rdbms/demo
    MAKEDEMO= \\
    @if [ "$(NONDEFER)" = "true" -o "$(NONDEFER)" = "TRUE" ] ; then \\
    $(ECHO) $(CC) $(LDFLAGS) -o $@ $? $(NDFOPT) $(OCILDLIBS) $(CLIBS); \\
    else \\
    $(ECHO) $(CC) $(LDFLAGS) -o $@ $? $(OCILDLIBS) $(CLIBS); \\
    fi
    cdemo1: cdemo1.o
    $(MAKEDEMO)
    .c.o:
    $(CC) -c $(INCLUDE) $(CFLAGS) $*.c
    First note the '.c.o' target rule. Note that the INCLUDE macro is here, which
    has the -I compiler option to include the directory where the demo header files
    are located. The cdemo1 target will execute the MAKEDEMO macro. Based on
    whether or not the NONDEFER macro is "true" or "TRUE", the program is linked
    either with or without the nondeferred option. Notice that if NONDEFER is true,
    then the NDFOPT macro is included in the link. If NONDEFER isn't true, then
    NDFOPT isn't included. That's the only difference. If you link with the
    nondeferred option, than deferring the parse with the defflg parameter of
    oparse() has no effect. See the OCI manual for more information on the
    oparse() function and what it does. In most cases, you will want the ability
    to defer the parse, and so you wouldn't link with NDFOPT. Other than NDFOPT,
    the libraries to link with are OCILDLIBS and CLIBS. So you can use these
    macros in your own makefile to link OCI programs.
    proc.mk can also be used to link OCI programs. Like oracle.mk, it also defines
    OCILDLIBS. The link line would look like the line under the .pc: target used
    for Pro*C programs, but would use OCILDLIBS instead of PROLDLIBS:
    @$(ECHO) $(CC) $(CFLAGS) $(LDFLAGS) -o $* $*.c $(OCILDLIBS)
    Note that proc.mk does not link with the nondeferred option. For version 6,
    there are no OCI targets in oracle.mk, so you should use proc.mk as the
    template to link OCI programs. For Oracle7, use either proc.mk or oracle.mk.
    VII. Some issues about linking
    Most unix linkers are one-pass. This means that the linker will only examine
    the symbols in your executable once. Because of this, several of the Oracle
    libraries need to be included more than once to resolve all of the symbols.
    This is because the libraries are mutually referencial - functions in one
    library call functions in another, and the second library in turn calls
    functions in the first library. As a result, it is not recommended that you
    change the order of the libraries in the link. If you add your own libraries,
    add them either before or after the Oracle libraries. Don't put them between
    Oracle libraries on the link line. The Oracle libraries would be PROLDLIBS for
    Pro*C programs, and OCILDLIBS for OCI programs. If you use a utility such as
    'nmake', you should be aware of how that differs from 'make', as well. Macro
    processing can be different between the two utilities.
    You should also be aware that the specific Oracle libraries used vary between
    operating systems and Oracle versions. If you upgrade the precompiler and the
    database, chances are that the libraries necessary will also change. So you
    may have to change any existing makefiles. Always use the proc.mk that ships
    with the precompiler as a guide to which libraries are necessary.
    There are two different ways to specify a library to be included in the link.
    One is to fully qualify the name of the library (such as /u02/7016/lib/libsql.a
    in the above example). Another is to use the -l option. If you specify a
    library (such as -lnlsrtl) this tells the linker to look for a library called
    libnlsrtl.a in the library search path. To add directories to the library
    search path, use the -L option. For example, the LDFLAGS macro should contain
    -L$(ORACLE_HOME)/lib. This tells the linker to look in this directory to find
    libraries specified with -l. Some of the Oracle libraries are fully qualified,
    and some are included with -L and -l. Both have the same effect.
    You can create your own libraries by using the 'ar' unix command. This utility
    allows you to archive several .o object files into one .a library archive.
    Consult your unix man pages on 'ar' for more information on this command and
    how to use it.
    Appendix A: Source code for the multiple module example
    Here are the files used in this example:
    **** FILE main.h ****
    extern void sqlerror();
    extern void connect();
    extern void print_names();
    extern void disconnect();
    *** FILE main.c ****
    #include <stdio.h>
    #include "main.h"
    void main() {                                                                 
    int dept;
    printf("Hello There!\
    printf("Now connecting...\
    connect("scott", "tiger");
    printf("Enter dept no: ");
    scanf("%d", &dept);
    print_names(dept);
    printf("Disconnecting...\
    disconnect();
    **** FILE connect.pc ****
    #include <stdio.h>
    #include "main.h"
    EXEC SQL include sqlca;
    void connect(username, password)
    char *username;                                                                
    char *password;  {                                                             
    EXEC SQL begin declare section;
    VARCHAR un[20];
    VARCHAR pw[20];
    EXEC SQL end declare section;
    strcpy(un.arr, username);
    un.len = strlen(un.arr);
    strcpy(pw.arr, password);
    pw.len = strlen(pw.arr);
    EXEC SQL whenever sqlerror do sqlerror();
    EXEC SQL connect :un identified by :pw;
    void disconnect() {                                                           
    EXEC SQL commit work release;
    void sqlerror() {                                                              
    printf("SQL error!!\
    EXEC SQL whenever sqlerror continue;
    printf("% .70s \
    ",sqlca.sqlerrm.sqlerrmc);
    EXEC SQL rollback release;
    exit(1);
    **** FILE print_names.pc ****
    #include <stdio.h>
    #include "main.h"
    EXEC SQL include sqlca;
    EXEC SQL begin declare section;
    VARCHAR ename[20];
    EXEC SQL end declare section;
    void print_names(dept)
    EXEC SQL begin declare section;
    int dept;
    EXEC SQL end declare section; {                                               
    EXEC SQL whenever sqlerror do sqlerror();
    EXEC SQL DECLARE emp_cursor CURSOR FOR
    select ename
    from emp
    where deptno = :dept;
    EXEC SQL OPEN emp_cursor;
    EXEC SQL whenever not found goto done_loop;
    printf("Employees in dept %d:\
    ", dept);
    for (;;) {                                                                   
    EXEC SQL fetch emp_cursor into :ename;
    ename.arr[ename.len] = '\\0';
    printf("%s\
    ", ename.arr);
    done_loop:
    EXEC SQL CLOSE emp_cursor;
    Appendix B. List of useful makefile macros
    Note that many of these macros are defined, but not all of them. proc.mk for
    Pro*C 2.0, for example, uses PROFLAGS in the precompile targets, but does not
    define it.
    PROFLAGS: options to be passed to the precompiler, such as ireclen or
    sqlcheck
    CFLAGS: options to be passed to the compiler, such as -I or -O
    LDFLAGS: options to be passed to the linker, such as -L
    CC (or RCC): the C compiler (/usr/5bin/cc for Sun)
    PROC: the precompiler ($ORACLE_HOME/bin/proc)
    LIBHOME: directory in which to find the Oracle libs ($ORACLE_HOME/lib for
    Oracle7, $ORACLE_HOME/rdbms/lib for version 6)
    LIBxxx: Oracle library libxxx.a fully qualified (such as LIBSQL, equal to
    $(LIBHOME)/libsql.a)
    LLIBxxx: Oracle library libxxx.a, using -l (such as LLIBCORE, equal to
    -lcore)
    PROLDLIBS: Oracle libraries necessary to link (defined in terms of other
    macros)
    OCILDLIBS: Oracle libraries necessary to link programs using the Oracle
    Call Interfaces (OCI) (also defined in terms of other macros)
    ______________________________________________________________________________

    Robert B     gin (self) (guest) wrote:
    : Robert B     gin (guest) wrote:
    : : Since I've last posted, I've installed RedHat 5.2 and
    ditched
    : : Slackware!
    : : (btw, what a breeze - Hat's off to RH! very nice install!).
    : : I've then installed oracle, have managed to setup
    tnsnames.ora
    : : so I can connect via sqlplus to my remote database (on
    : VAX/VMS).
    : : But now I have Pro*C linker problems with:
    : : make -f demo_proc.mk build OBJS=test.o exe=test
    : : (blah,blah,blah)
    : : /usr/lib/crt1.o(.text+0x36): undefined reference to `main'
    : : make: *** [build] Error 1
    : : Does anybody out there have a similar problem?
    : : Rob
    : Duh! forget it... (EXE has to be caps... RTFM)
    : (cryptic error message though?)
    : works great!!!
    Could you please tell me where I can get demo_proc.mk file
    for Linux (RedHat)?
    Thanks
    null

  • How to bind the data from user table into user report

    Hi All,
      Please assist me to bind the data from user table into user report. I did create an user table with data and create a user report template (using Query Print Layout). How can I display my data into report format which I created before? Any sample program or document I can refer?
    Platform: SAPB1 2005A
    Add On Language: VB.Net 2003
    Thanks.
    rgds
    ERIC

    Hi Ibai,
      Thanks for your feed back. I give you an example.
    Let say now i wanna print employee list, so i will go
    1. Main Menu -> Reports -> HR -> Employee List
    2. Choose the Selection Criteria -> OK
    3. Matrix will display (Employee List)
    4. I can print the report click on print button
    5. Printing report
    My target
    1. Main Menu -> Eric_SubMenu -> Employee List
    2. Matrix will display (Employee List)
    3. Print button
    4. Print report
    My problem
    Now I would like to use my own report format. My own report format means I wanna add on my logo or do some customization within the employee report. So how I am going to do? I only able to display the employee list in matrix. How do I create a new report format and display it.
    Thanks.
    rgds
    ERIC

  • How can a hyperlink in a table load an image in a new page?

    Hello,
    I�m using Java Studion Creator 2 Update 1 an I have following problem:
    In my jsp-page (main.jsp) I have a table component with an image hyperlink (showOriginal) in the first column and a hyperlink to another page in the second. On this page is also a hyperlink, which refreshes the table.
    The hyperlink "showOriginal"should open an new browser window and display an image depending on the selected table row. I set the property "target" for the hyperlink to "new Window" and specified an event_method (showOriginal_action() ), which gets the image for the selected table row and returns a new jsp-page (originalView.jsp).
    OriginalView.jsp has only one image component. The url for this image is set by the event_method of the image-hyperlink of main.jsp. Everything works fine but if I press the refresh link on the main.jsp to refresh the table (after opening the new window with the image), the image is also loaded in the main.jsp and every other link causes the same problem. Even when I close the window with the image, the same happens. It seems to my like I`m still on the main.jsp and not on the originalView.jsp (after I included a </redirect> tag in navigation.xml, I can see in the browser address line that the OriginalView.jsp is loaded) and the main.jsp "thinks" that the current content of itself is the image?
    I changed the return value of showOriginal_action() to null (because of the target property I always get the originalView-page) and then I included an onClick-method for the imagehyperlink to open a new window with the image via javascript but this didn`t work because the onclick is performed first and at this time I don`t have the image url yet (because first I must know, which row was selected in the table).
    Am I doing something wrong or is this not the correct way to do this? I just want to click the link in the table and a new window/page should be opened, which displays the image, independent from anything else. and all the links in the main-page must still work properly.
    I appreciate any help & suggestions.
    thanks
    Message was edited by:
    dan_k

    hi,
    here the code of main.jsp (with your suggestions):
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root version="1.2" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:ui="http://www.sun.com/web/ui">
    <jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
    <f:view>
    <ui:page binding="#{main.page1}" id="page1">
    <ui:html binding="#{main.html1}" id="html1">
    <ui:head binding="#{main.head1}" id="head1" title="SEWM">
    <ui:link binding="#{main.link1}" id="link1" url="/resources/stylesheet.css"/>
    <ui:script binding="#{main.script1}" id="script1" url="/resources/global.js"/>
    </ui:head>
    <ui:body binding="#{main.body1}" id="body1" style="background-color: rgb(255, 255, 255); -rave-layout: grid">
    <ui:form binding="#{main.formMain}" id="formMain" target="_self">
    <div id="main">
    <h:panelGrid binding="#{main.header}" id="header" styleClass="abc_header_bar">
    <ui:image binding="#{main.image1}" id="image1" styleClass="abc_header_logo" url="/resources/abc_logo.gif"/>
    <ui:image binding="#{main.imageLine1}" id="imageLine1" styleClass="abc_header_logoLine" url="/resources/amb_leiste.gif"/>
    <ui:staticText binding="#{main.staticText2}" id="staticText2" styleClass="abc_page_title" text="IWM Control"/>
    </h:panelGrid>
    <h:panelGrid binding="#{main.menu}" columns="1" id="menu" styleClass="abc_menu_wrapper">
    <ui:image align="middle" binding="#{main.imageLeon1}" height="81" id="imageLeon1" url="/resources/leon.gif"/>
    <h:panelGrid binding="#{main.gridPanel1}" id="gridPanel1" styleClass="abc_menu_box">
    <ui:hyperlink action="#{main.changePssw_action}" binding="#{main.hyperlinkChangePassword}" id="hyperlinkChangePassword"
    style="color:#990000" text="#{main.propertyResourceProvider1.value['changePassword']}"/>
    <ui:hyperlink action="#{main.refresh_action}" binding="#{main.hyperlinkRefresh}" id="hyperlinkRefresh"
    onClick="function test() {&#xa; this.formMain.target='_self';&#xa;}" style="color:#990000" text="#{main.propertyResourceProvider1.value['refresh']}"/>
    <ui:hyperlink binding="#{main.customerHelp1}" id="customerHelp1" immediate="true" style="color:#990000" styleClass=""
    target="_blank" text="Hilfe" url="/main.html"/>
    <ui:label binding="#{main.label2}" id="label2" styleClass="abc_lbplaceholder" text="_______________________"/>
    <ui:staticText binding="#{main.staticText108}" id="staticText108" styleClass="abc_tinfo" text="TEST Info" toolTip="#{SessionBean1.testSystemInfo}"/>
    </h:panelGrid>
    </h:panelGrid>
    <h:panelGrid binding="#{main.gridPanelUserInfo1}" columns="3" id="gridPanelUserInfo1" styleClass="abc_userinfo">
    <ui:staticText binding="#{main.staticText1}" id="staticText1" text="Sie sind angemeldet als "/>
    <ui:staticText binding="#{main.registeredUser1}" id="registeredUser1" text="#{SessionBean1.webFacade.user.uname}"/>
    <ui:hyperlink action="#{main.logout_action}" binding="#{main.logout1}" id="logout1" style="color: #ffffff" text="#{main.propertyResourceProvider1.value['logout']}"/>
    </h:panelGrid>
    <h:panelGrid binding="#{main.gridPanel86}" id="gridPanel86" styleClass="abc_page_content">
    <ui:label binding="#{main.label3}" id="label3" text="#{main.propertyResourceProvider1.value['sysmessages']}"/>
    <ui:messageGroup binding="#{main.outlineTableMessageGroup}" id="outlineTableMessageGroup" styleClass="abc_messagebox"/>
    <ui:tabSet binding="#{main.tabSet1}" id="tabSet1" lite="true" mini="true" selected="tab2">
    <ui:tab action="#{main.tab2_action}" binding="#{main.tab2}" id="tab2" text="#{main.propertyResourceProvider1.value['openProcesses']}">
    <ui:panelLayout binding="#{main.layoutPanel2}" id="layoutPanel2">
    <ui:table binding="#{main.table3}" id="table3" paginateButton="true" paginationControls="true"
    styleClass="abc_main_fulltable" title="Offene Vorg�nge" width="600">
    <script><![CDATA[
    /* ----- Functions for Table Preferences Panel ----- */
    * Toggle the table preferences panel open or closed
    function togglePreferencesPanel1() {
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    table.toggleTblePreferencesPanel();
    /* ----- Functions for Filter Panel ----- */
    * Return true if the filter menu has actually changed,
    * so the corresponding event should be allowed to continue.
    function filterMenuChanged1() {
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    return table.filterMenuChanged();
    * Toggle the custom filter panel (if any) open or closed.
    function toggleFilterPanel1() {
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    return table.toggleTableFilterPanel();
    /* ----- Functions for Table Actions ----- */
    * Initialize all rows of the table when the state
    * of selected rows changes.
    function initAllRows1() {
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    table.initAllRows();
    * Set the selected state for the given row groups
    * displayed in the table. This functionality requires
    * the 'selectId' of the tableColumn to be set.
    * @param rowGroupId HTML element id of the tableRowGroup component
    * @param selected Flag indicating whether components should be selected
    function selectGroupRows1(rowGroupId, selected) {
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    table.selectGroupRows(rowGroupId, selected);
    * Disable all table actions if no rows have been selected.
    function disableActions1() {
    // Determine whether any rows are currently selected
    var table = document.getElementById("form1:tabSet1:tab2:table3");
    var disabled = (table.getAllSelectedRowsCount() > 0) ? false : true;
    // Set disabled state for top actions
    document.getElementById("form1:tabSet1:tab2:table3:tableActionsTop:deleteTop").setDisabled(disabled);
    // Set disabled state for bottom actions
    document.getElementById("form1:tabSet1:tab2:table3:tableActionsBottom:deleteBottom").setDisabled(disabled);
    }]]></script>
    <ui:tableRowGroup binding="#{main.tableRowGroup4}" emptyDataMsg="Keine Vorg�nge gefunden." id="tableRowGroup4"
    rows="20" sourceData="#{SessionBean1.openProcesses}" sourceVar="currentRowTable">
    <ui:tableColumn binding="#{main.tableColumn23}" embeddedActions="true" id="tableColumn23" noWrap="true">
    <ui:panelGroup binding="#{main.groupPanel13}" id="groupPanel13">
    <ui:imageHyperlink action="#{main.showOriginal_action}"
    alt="#{main.propertyResourceProvider1.value['ttShowOriginals']}"
    binding="#{main.imageHyperlink64}" id="imageHyperlink64"
    imageURL="/resources/original_small.gif" immediate="true" target="_blank" toolTip="#{main.propertyResourceProvider1.value['ttShowOriginals']}"/>
    </ui:panelGroup>
    </ui:tableColumn>
    <ui:tableColumn binding="#{main.tableColumn15}" headerText="Kreditor" id="tableColumn15" sort="vendorName">
    <ui:hyperlink action="#{main.edit_action}" binding="#{main.hyperlink1}" id="hyperlink1" text="#{currentRowTable.value['vendorName']}"/>
    </ui:tableColumn>
    <ui:tableColumn binding="#{main.tableColumn17}" headerText="Rechnungsnummer" id="tableColumn17" sort="refDocNo">
    <ui:staticText binding="#{main.staticText101}" id="staticText101" styleClass="abc_table_celltext" text="#{currentRowTable.value['refDocNo']}"/>
    </ui:tableColumn>
    <ui:tableColumn binding="#{main.tableColumn18}" headerText="Rechnungsdatum" id="tableColumn18" sort="docDate">
    <ui:staticText binding="#{main.staticText102}" converter="#{main.dateTimeConverter1}" id="staticText102"
    styleClass="abc_table_celltext" text="#{currentRowTable.value['docDate']}"/>
    </ui:tableColumn>
    <ui:tableColumn binding="#{main.tableColumn19}" headerText="F�lligkeit" id="tableColumn19" noWrap="true" sort="dueDate">
    <ui:staticText binding="#{main.staticText103}" converter="#{main.dateTimeConverter1}" id="staticText103"
    styleClass="abc_table_celltext" text="#{currentRowTable.value['dueDate']}"/>
    </ui:tableColumn>
    <ui:tableColumn binding="#{main.tableColumn21}" headerText="Zuordnung" id="tableColumn21" sort="stapleName">
    <ui:staticText binding="#{main.staticText105}" id="staticText105" styleClass="abc_table_celltext" text="#{currentRowTable.value['stapleName']}"/>
    </ui:tableColumn>
    </ui:tableRowGroup>
    <f:facet name="actionsBottom"/>
    </ui:table>
    </ui:panelLayout>
    </ui:tab>
    </ui:tabSet>
    </h:panelGrid>
    </div>
    <div id="wait" style="visibility: hidden;">
    <h:panelGrid binding="#{main.gridPanel8}" id="gridPanel8" styleClass="abc_wait_div">
    <ui:label binding="#{main.label1}" id="label1" styleClass="abc_labelwait_align" text="#{main.propertyResourceProvider1.value['loaddata']}"/>
    <ui:image binding="#{main.image15}" id="image15" url="/resources/loading.gif"/>
    </h:panelGrid>
    </div>
    </ui:form>
    </ui:body>
    </ui:html>
    </ui:page>
    </f:view>
    </jsp:root>
    originalView.jsp:
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root version="1.2" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:ui="http://www.sun.com/web/ui">
    <jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
    <f:view>
    <ui:page binding="#{originalView.page1}" id="page1">
    <ui:html binding="#{originalView.html1}" id="html1">
    <ui:head binding="#{originalView.head1}" id="head1">
    <ui:link binding="#{originalView.link1}" id="link1" url="/resources/stylesheet.css"/>
    </ui:head>
    <ui:body binding="#{originalView.body1}" id="body1" style="-rave-layout: grid">
    <ui:form binding="#{originalView.form1}" id="form1">
    <ui:image binding="#{originalView.image1}" height="#{SessionBean1.archiveObjectsFileDataProvider.value['height']}" id="image1"
    style="left: 120px; top: 48px; position: absolute" url="#{SessionBean1.archiveObjectsFileDataProvider.value['url']}" width="#{SessionBean1.archiveObjectsFileDataProvider.value['width']}"/>
    </ui:form>
    </ui:body>
    </ui:html>
    </ui:page>
    </f:view>
    </jsp:root>
    and java-methods:
    public String showOriginal_action() {
    getSelectedRowFromMainTable();
         setSelectedImage(); // the image url ist then available via session bean
    return "originalView"; // displays the image using the url in the session bean
    public String refresh_action() {
    try {
    getSessionBean1().getOpenProcessTable();
    //hier I tried
    //getHyperlinkRefresh().setTarget("_self");
    //or getFormMain().setTarget("_self");
    catch(Exception ex) {
    error(ex.getMessage());
    return null;
    }

  • JDBC Sender MSSQL Stored Procedure - Multiple Select Statements

    Hello all,
    I will proceed to tell you my problem, for which solution I request your kind advice:
    Im working in a project for a retailer, which consists in sending the information from erp and sql server to pos thru XI interfaces.
    One of the interfaces is about sending items from sql server to a file so the pos can load it into the system. For doing so I have devloped an stored procedure which function is to return several select statements as many stores the retailer might have, so they can have a different file per store along with its corresponding items in it. 
    The thing is that XI just gets the first select statement and creates the corresponding file, but it seems to ignore the remaining responses as I'm neither getting any file nor an error afterwards.
    So, my question is: is XI capable of handling multiple select responses from an Stored Procedure in graphical mapping??? Or am I just wasting my time trying?
    Thanks in advice for your help.
    Regards.

    Hello Ramkumar,
    After 5 days trying, I finally made it work out applying your advice. Below the short explanation of what I did:
    My Source structure is: Main Node->Row->Records (Material Number, StoreNum, Price, Status)
    My Target structure is: Main Node->File Node->Record Node->Records ( Material Number, Price, Status)
    The key was to make all the occurrences happen against StoreNum node. So, based on what you adviced these two where the key mappings:
    1) The Mapping that will create a new file for each different store that comes in the query (In my case, query was already sort by store using an sql "order by" function, if not you can also use xi node function "sort" as Ramkumar suggested)
    StoreNum->RemoveContext->SplitbyValue (Value Changed)->Collapse Contexts->File Node
    2) The Mapping that will create each record in its corresponding store file:
    StoreNum->RemoveContext->SplitbyValue (Value Changed)->Record Node
    And Voilá !!! It worked.
    Thanks very much Ramkumar.
    Regards.

  • Strange Error when starting tomcat 5.5.7

    Hello,
    on WinXP SP2 I am using JavaStudio Enterprise 8, with J2SE 1.5 update 9. I am trying to run the tomcat-servlet-example. The project compile properly, but when i run the project i get the error below. Since i have no clue how to overtake this, i ask assistance on fixing it.
    TIA,
    Luca
    Using CATALINA_BASE: C:\Documents and Settings\luca.C64\.jstudio\Ent8\jakarta-tomcat-5.5.7_base
    Using CATALINA_HOME: D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7
    Using CATALINA_TMPDIR: C:\Documents and Settings\luca.C64\.jstudio\Ent8\jakarta-tomcat-5.5.7_base\temp
    Using JAVA_HOME: C:\Programmi\Java\jdk1.5.0_09
    13-ott-2006 18.56.05 org.apache.coyote.http11.Http11Protocol init
    INFO: Initializing Coyote HTTP/1.1 on http-8080
    13-ott-2006 18.56.05 org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 1297 ms
    13-ott-2006 18.56.05 org.apache.tomcat.util.digester.Digester fatalError
    GRAVE: Parse Fatal Error at line 1 column 1: Content is not allowed in prolog.
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
    at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
    at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
    at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
    at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1580)
    at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:370)
    at org.apache.catalina.users.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:97)
    at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:129)
    at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:792)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:138)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:108)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:80)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:676)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.naming.NamingContext lookup
    AVVERTENZA: Unexpected exception resolving reference
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1580)
    at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:370)
    at org.apache.catalina.users.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:97)
    at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:129)
    at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:792)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:138)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:108)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:80)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:676)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.catalina.mbeans.GlobalResourcesLifecycleListener createMBeans
    GRAVE: Exception processing Global JNDI Resources
    javax.naming.NamingException: Content is not allowed in prolog.
    at org.apache.naming.NamingContext.lookup(NamingContext.java:804)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:138)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.createMBeans(GlobalResourcesLifecycleListener.java:108)
    at org.apache.catalina.mbeans.GlobalResourcesLifecycleListener.lifecycleEvent(GlobalResourcesLifecycleListener.java:80)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:676)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.catalina.core.StandardService start
    INFO: Starting service Catalina
    13-ott-2006 18.56.05 org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/5.5.7
    13-ott-2006 18.56.05 org.apache.tomcat.util.digester.Digester fatalError
    GRAVE: Parse Fatal Error at line 1 column 1: Content is not allowed in prolog.
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
    at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
    at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
    at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
    at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentScannerImpl$PrologDispatcher.dispatch(Unknown Source)
    at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1580)
    at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:370)
    at org.apache.catalina.users.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:97)
    at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:129)
    at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:792)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:222)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:440)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.naming.NamingContext lookup
    AVVERTENZA: Unexpected exception resolving reference
    org.xml.sax.SAXParseException: Content is not allowed in prolog.
    at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1580)
    at org.apache.catalina.users.MemoryUserDatabase.open(MemoryUserDatabase.java:370)
    at org.apache.catalina.users.MemoryUserDatabaseFactory.getObjectInstance(MemoryUserDatabaseFactory.java:97)
    at org.apache.naming.factory.ResourceFactory.getObjectInstance(ResourceFactory.java:129)
    at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:792)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:222)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:440)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.catalina.realm.UserDatabaseRealm start
    GRAVE: Exception looking up UserDatabase under key UserDatabase
    javax.naming.NamingException: Content is not allowed in prolog.
    at org.apache.naming.NamingContext.lookup(NamingContext.java:804)
    at org.apache.naming.NamingContext.lookup(NamingContext.java:152)
    at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:222)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:440)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.catalina.startup.Catalina start
    GRAVE: Catalina.start:
    LifecycleException: No UserDatabase component found under key UserDatabase
    at org.apache.catalina.realm.UserDatabaseRealm.start(UserDatabaseRealm.java:228)
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003)
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:440)
    at org.apache.catalina.core.StandardService.start(StandardService.java:450)
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.catalina.startup.Catalina start
    INFO: Server startup in 391 ms
    13-ott-2006 18.56.05 org.apache.catalina.core.StandardServer await
    GRAVE: StandardServer.await: create[8025]:
    java.net.BindException: Address already in use: JVM_Bind
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
    at java.net.ServerSocket.bind(ServerSocket.java:319)
    at java.net.ServerSocket.<init>(ServerSocket.java:185)
    at org.apache.catalina.core.StandardServer.await(StandardServer.java:346)
    at org.apache.catalina.startup.Catalina.await(Catalina.java:600)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:560)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
    13-ott-2006 18.56.05 org.apache.coyote.http11.Http11Protocol pause
    INFO: Pausing Coyote HTTP/1.1 on http-8080

    Hello,
    I have set the verbosity of Ant to Debug, and the resulting log after clicking on the Run Main Project button is here below. The same error happens in Debug Maing Project.
    It seems to be difficult to get it working, and i cant understand why. After all, i used it for 1 year without problems, and now i m struggling...
    See you,
    Luca
    Adding reference: ant.PropertyHelper
    Detected Java version: 1.5 in: C:\Programmi\Java\jdk1.5.0_09\jre
    Detected OS: Windows XP
    Adding reference: ant.ComponentHelper
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-ant-browsetask.jar!/org/netbeans/modules/ant/browsetask/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-ant-browsetask.jar!/org/netbeans/modules/ant/browsetask/antlib.xml
    +Datatype nbbrowse org.netbeans.modules.ant.browsetask.NbBrowse
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-ant-browsetask.jar!/org/netbeans/modules/ant/browsetask/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-ant-browsetask.jar!/org/netbeans/modules/ant/browsetask/antlib.xml
    +Datatype antlib:org.netbeans.modules.ant.browsetask:nbbrowse org.netbeans.modules.ant.browsetask.NbBrowse
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-debugger-jpda-ant.jar!/org/netbeans/modules/debugger/jpda/ant/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-debugger-jpda-ant.jar!/org/netbeans/modules/debugger/jpda/ant/antlib.xml
    +Datatype nbjpdaconnect org.netbeans.modules.debugger.jpda.ant.JPDAConnect
    +Datatype nbjpdastart org.netbeans.modules.debugger.jpda.ant.JPDAStart
    +Datatype nbjpdareload org.netbeans.modules.debugger.jpda.ant.JPDAReload
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-debugger-jpda-ant.jar!/org/netbeans/modules/debugger/jpda/ant/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/ide5/ant/nblib/org-netbeans-modules-debugger-jpda-ant.jar!/org/netbeans/modules/debugger/jpda/ant/antlib.xml
    +Datatype antlib:org.netbeans.modules.debugger.jpda.ant:nbjpdaconnect org.netbeans.modules.debugger.jpda.ant.JPDAConnect
    +Datatype antlib:org.netbeans.modules.debugger.jpda.ant:nbjpdastart org.netbeans.modules.debugger.jpda.ant.JPDAStart
    +Datatype antlib:org.netbeans.modules.debugger.jpda.ant:nbjpdareload org.netbeans.modules.debugger.jpda.ant.JPDAReload
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-ant.jar!/org/netbeans/modules/j2ee/ant/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-ant.jar!/org/netbeans/modules/j2ee/ant/antlib.xml
    +Datatype nbdeploy org.netbeans.modules.j2ee.ant.Deploy
    +Datatype nbverify org.netbeans.modules.j2ee.ant.Verify
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-ant.jar!/org/netbeans/modules/j2ee/ant/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-ant.jar!/org/netbeans/modules/j2ee/ant/antlib.xml
    +Datatype antlib:org.netbeans.modules.j2ee.ant:nbdeploy org.netbeans.modules.j2ee.ant.Deploy
    +Datatype antlib:org.netbeans.modules.j2ee.ant:nbverify org.netbeans.modules.j2ee.ant.Verify
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-sun-ide.jar!/org/netbeans/modules/j2ee/sun/ide/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-sun-ide.jar!/org/netbeans/modules/j2ee/sun/ide/antlib.xml
    +Datatype sun-appserv-deploy org.apache.tools.ant.taskdefs.optional.sun.appserv.DeployTask
    +Datatype sun-appserv-undeploy org.apache.tools.ant.taskdefs.optional.sun.appserv.UndeployTask
    +Datatype sun-appserv-instance org.apache.tools.ant.taskdefs.optional.sun.appserv.InstanceTask
    +Datatype sun-appserv-component org.apache.tools.ant.taskdefs.optional.sun.appserv.ComponentTask
    +Datatype sun-appserv-admin org.apache.tools.ant.taskdefs.optional.sun.appserv.AdminTask
    +Datatype sun-appserv-input org.apache.tools.ant.taskdefs.Input
    +Datatype sun-appserv-jspc org.apache.tools.ant.taskdefs.optional.sun.appserv.SunJspc
    +Datatype sun-appserv-update org.apache.tools.ant.taskdefs.optional.sun.appserv.UpdateTask
    parsing buildfile jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-sun-ide.jar!/org/netbeans/modules/j2ee/sun/ide/antlib.xml with URI = jar:file:/D:/Programmi/Sun/jstudio_ent8/ide/enterprise1/ant/nblib/org-netbeans-modules-j2ee-sun-ide.jar!/org/netbeans/modules/j2ee/sun/ide/antlib.xml
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-deploy org.apache.tools.ant.taskdefs.optional.sun.appserv.DeployTask
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-undeploy org.apache.tools.ant.taskdefs.optional.sun.appserv.UndeployTask
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-instance org.apache.tools.ant.taskdefs.optional.sun.appserv.InstanceTask
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-component org.apache.tools.ant.taskdefs.optional.sun.appserv.ComponentTask
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-admin org.apache.tools.ant.taskdefs.optional.sun.appserv.AdminTask
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-input org.apache.tools.ant.taskdefs.Input
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-jspc org.apache.tools.ant.taskdefs.optional.sun.appserv.SunJspc
    +Datatype antlib:org.netbeans.modules.j2ee.sun.ide:sun-appserv-update org.apache.tools.ant.taskdefs.optional.sun.appserv.UpdateTask
    Setting ro project property: ant.file -> C:\Documents and Settings\luca.C64\TomcatServletExample1\build.xml
    Setting ro project property: ant.version -> Apache Ant version 1.6.2 compiled on July 16 2004
    Setting ro project property: ant.home -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\ant
    Setting ro project property: forceRedeploy -> false
    Setting ro project property: build.compiler.emacs -> true
    Adding reference: ant.projectHelper
    Adding reference: ant.parsing.context
    Adding reference: ant.targets
    parsing buildfile C:\Documents and Settings\luca.C64\TomcatServletExample1\build.xml with URI = file:///C:/Documents%20and%20Settings/luca.C64/TomcatServletExample1/build.xml
    Setting ro project property: ant.project.name -> TomcatServletExample
    Adding reference: TomcatServletExample
    Setting ro project property: ant.file.TomcatServletExample -> C:\Documents and Settings\luca.C64\TomcatServletExample1\build.xml
    Project base dir set to: C:\Documents and Settings\luca.C64\TomcatServletExample1
    +Target:
    Importing file nbproject/build-impl.xml from C:\Documents and Settings\luca.C64\TomcatServletExample1\build.xml
    parsing buildfile C:\Documents and Settings\luca.C64\TomcatServletExample1\nbproject\build-impl.xml with URI = file:///C:/Documents%20and%20Settings/luca.C64/TomcatServletExample1/nbproject/build-impl.xml
    Setting ro project property: ant.file.TomcatServletExample-impl -> C:\Documents and Settings\luca.C64\TomcatServletExample1\nbproject\build-impl.xml
    +Target: default
    +Target: -pre-init
    +Target: -init-private
    +Target: -init-user
    +Target: -init-project
    +Target: -do-ear-init
    +Target: -do-init
    +Target: -post-init
    +Target: -init-check
    +Target: -init-macrodef-property
    +Target: -init-macrodef-javac
    +Target: -init-macrodef-junit
    +Target: -init-macrodef-java
    +Target: -init-macrodef-nbjpda
    +Target: -init-macrodef-debug
    +Target: init
    +Target: deps-module-jar
    +Target: deps-ear-jar
    +Target: deps-jar
    +Target: -pre-pre-compile
    +Target: -pre-compile
    +Target: -do-compile
    +Target: -copy-manifest
    +Target: -post-compile
    +Target: compile
    +Target: -pre-compile-single
    +Target: -do-compile-single
    +Target: -post-compile-single
    +Target: compile-single
    +Target: compile-jsps
    +Target: -do-compile-single-jsp
    +Target: compile-single-jsp
    +Target: -pre-dist
    +Target: -do-dist-without-manifest
    +Target: -do-dist-with-manifest
    +Target: do-dist
    +Target: library-inclusion-in-manifest
    +Target: library-inclusion-in-archive
    +Target: do-ear-dist
    +Target: -post-dist
    +Target: dist
    +Target: dist-ear
    +Target: run
    +Target: run-deploy
    +Target: verify
    +Target: run-display-browser
    +Target: run-main
    +Target: debug
    +Target: debug-display-browser
    +Target: debug-single
    +Target: -debug-start-debugger
    +Target: -debug-start-debuggee-single
    +Target: debug-single-main
    +Target: -pre-debug-fix
    +Target: -do-debug-fix
    +Target: debug-fix
    +Target: javadoc-build
    +Target: javadoc-browse
    +Target: javadoc
    +Target: -pre-pre-compile-test
    +Target: -pre-compile-test
    +Target: -do-compile-test
    +Target: -post-compile-test
    +Target: compile-test
    +Target: -pre-compile-test-single
    +Target: -do-compile-test-single
    +Target: -post-compile-test-single
    +Target: compile-test-single
    +Target: -pre-test-run
    +Target: -do-test-run
    +Target: -post-test-run
    +Target: test-report
    +Target: -test-browse
    +Target: test
    +Target: -pre-test-run-single
    +Target: -do-test-run-single
    +Target: -post-test-run-single
    +Target: test-single
    +Target: -debug-start-debuggee-test
    +Target: -debug-start-debugger-test
    +Target: debug-test
    +Target: -do-debug-fix-test
    +Target: debug-fix-test
    +Target: deps-clean
    +Target: do-clean
    +Target: check-clean
    +Target: -post-clean
    +Target: clean
    +Target: clean-ear
    Build sequence for target `run' is [-pre-init, -init-private, -init-user, -init-project, -init-macrodef-property, -do-ear-init, -do-init, -post-init, -init-check, -init-macrodef-javac, -init-macrodef-junit, -init-macrodef-java, -init-macrodef-nbjpda, -init-macrodef-debug, init, deps-module-jar, deps-ear-jar, deps-jar, -pre-pre-compile, -pre-compile, -copy-manifest, library-inclusion-in-archive, library-inclusion-in-manifest, -do-compile, -post-compile, compile, compile-jsps, -do-compile-single-jsp, -pre-dist, -do-dist-with-manifest, -do-dist-without-manifest, do-dist, -post-dist, dist, run-deploy, run-display-browser, run]
    Complete build sequence is [-pre-init, -init-private, -init-user, -init-project, -init-macrodef-property, -do-ear-init, -do-init, -post-init, -init-check, -init-macrodef-javac, -init-macrodef-junit, -init-macrodef-java, -init-macrodef-nbjpda, -init-macrodef-debug, init, deps-module-jar, deps-ear-jar, deps-jar, -pre-pre-compile, -pre-compile, -copy-manifest, library-inclusion-in-archive, library-inclusion-in-manifest, -do-compile, -post-compile, compile, compile-jsps, -do-compile-single-jsp, -pre-dist, -do-dist-with-manifest, -do-dist-without-manifest, do-dist, -post-dist, dist, run-deploy, run-display-browser, run, debug-display-browser, -post-compile-test-single, -pre-test-run, -pre-compile-single, -do-compile-single, -post-compile-single, compile-single, run-main, -pre-pre-compile-test, -pre-compile-test, -do-compile-test, -post-compile-test, compile-test, debug, javadoc-build, compile-single-jsp, -debug-start-debugger-test, -debug-start-debuggee-test, debug-test, -do-test-run, test-report, debug-single, do-clean, check-clean, -pre-test-run-single, javadoc-browse, javadoc, default, -pre-compile-test-single, -do-compile-test-single, compile-test-single, -do-test-run-single, do-ear-dist, -post-test-run-single, -post-test-run, -test-browse, test, dist-ear, deps-clean, -post-clean, clean, -pre-debug-fix, -do-debug-fix, debug-fix, -do-debug-fix-test, -debug-start-debuggee-single, clean-ear, -debug-start-debugger, verify, debug-fix-test, test-single, debug-single-main, ]
    -pre-init:
    -init-private:
    Loading C:\Documents and Settings\luca.C64\TomcatServletExample1\nbproject\private\private.properties
    Setting project property: javac.debug -> true
    Setting project property: javadoc.preview -> true
    Setting project property: j2ee.platform.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\jsp-api.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\servlet-api.jar
    Setting project property: j2ee.server.instance -> tomcat55:home=$bundled_home:base=$bundled_base
    Setting project property: user.properties.file -> C:\Documents and Settings\luca.C64\.jstudio\Ent8\build.properties
    -init-user:
    Loading C:\Documents and Settings\luca.C64\.jstudio\Ent8\build.properties
    Setting project property: libs.absolutelayout.src ->
    Setting project property: libs.absolutelayout.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\AbsoluteLayout.jar
    Setting project property: wsclientuptodate.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\ant\extra\wsclientuptodate.jar
    Setting project property: default.javac.target -> 1.5
    Setting project property: libs.jstl11.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\config\TagLibraries\JSTL11\standard.jar;D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\config\TagLibraries\JSTL11\jstl.jar
    Setting project property: libs.jstl11.src ->
    Setting project property: libs.absolutelayout.javadoc ->
    Setting project property: libs.PortletBuilder.src ->
    Setting project property: copyfiles.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\ant\extra\copyfiles.jar
    Setting project property: libs.PortletBuilder.javadoc ->
    Setting project property: libs.junit.src ->
    Setting project property: default.javac.source -> 1.5
    Setting project property: libs.junit.javadoc -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\docs\junit-3.8.1-api.zip
    Setting project property: libs.junit.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\junit-3.8.1.jar
    Setting project property: libs.jstl11.javadoc -> D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\docs\jstl-1.1.2-javadoc.zip
    Setting project property: jspc.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\ant\lib\ant.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\jsp-api.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\servlet-api.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\jasper-compiler-5.5.7.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\jasper-runtime-5.5.7.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\commons-el.jar:D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\commons-logging-1.0.4.jar
    Setting project property: libs.PortletBuilder.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\common.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\container.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\jdom.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\portlet.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\portletappengine.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\portletcontainercommon.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\portlettl.jar;D:\Programmi\Sun\jstudio_ent8\ide\portletbuilder1\modules\ext\psrun.jar
    Override ignored for property default.javac.source
    Override ignored for property default.javac.target
    -init-project:
    Loading C:\Documents and Settings\luca.C64\TomcatServletExample1\nbproject\project.properties
    Setting project property: javac.deprecation -> true
    Setting project property: build.test.results.dir -> build/test/results
    Setting project property: javadoc.nonavbar -> false
    Setting project property: war.name -> TomcatServletExample.war
    Setting project property: run.test.classpath -> :build/web/WEB-INF/classes:D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\junit-3.8.1.jar:build/test/classes
    Setting project property: javac.target -> 1.5
    Setting project property: j2ee.server.type -> Tomcat55
    Setting project property: client.urlPart ->
    Setting project property: display.browser -> true
    Setting project property: javadoc.noindex -> false
    Setting project property: web.docbase.dir -> web
    Setting project property: source.root -> src
    Setting project property: build.classes.dir -> build/web/WEB-INF/classes
    Setting project property: javadoc.author -> false
    Setting project property: test.src.dir -> test
    Setting project property: build.dir -> build
    Setting project property: build.ear.web.dir -> build/ear-module
    Setting project property: resource.dir -> setup
    Setting project property: war.ear.name -> TomcatServletExample.war
    Setting project property: build.test.classes.dir -> build/test/classes
    Setting project property: platform.active -> default_platform
    Setting project property: javac.compilerargs ->
    Setting project property: javadoc.use -> true
    Setting project property: lib.dir -> web/WEB-INF/lib
    Setting project property: build.web.excludes -> **/*.java,**/*.form
    Setting project property: debug.test.classpath -> :build/web/WEB-INF/classes:D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\junit-3.8.1.jar:build/test/classes
    Setting project property: dist.dir -> dist
    Setting project property: build.classes.excludes -> **/*.java,**/*.form
    Setting project property: javadoc.splitindex -> true
    Setting project property: javadoc.encoding ->
    Setting project property: javac.source -> 1.5
    Override ignored for property javadoc.preview
    Setting project property: debug.classpath -> :build/web/WEB-INF/classes
    Setting project property: compile.jsps -> false
    Setting project property: build.web.dir -> build/web
    Setting project property: runmain.jvmargs ->
    Setting project property: conf.dir -> src/conf
    Setting project property: build.generated.dir -> build/generated
    Setting project property: jar.compress -> false
    Setting project property: javac.test.classpath -> :build/web/WEB-INF/classes:D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\junit-3.8.1.jar
    Setting project property: javadoc.private -> false
    Override ignored for property javac.debug
    Setting project property: war.content.additional ->
    Setting project property: jspcompilation.classpath -> D:\Programmi\Sun\jstudio_ent8\ide\ide5\ant\lib\ant.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\jsp-api.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\jakarta-tomcat-5.5.7\common\lib\servlet-api.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\jasper-compiler-5.5.7.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\jasper-runtime-5.5.7.jar:D:\Programmi\Sun\jstudio_ent8\ide\enterprise1\modules\autoload\ext\commons-el.jar:D:\Programmi\Sun\jstudio_ent8\ide\ide5\modules\ext\commons-logging-1.0.4.jar:
    Setting project property: build.ear.classes.dir -> build/ear-module/WEB-INF/classes
    Setting project property: dist.javadoc.dir -> dist/javadoc
    Setting project property: src.dir -> src
    Setting project property: javac.classpath ->
    Setting project property: j2ee.platform -> 1.4
    Setting project property: javadoc.version -> false
    Setting project property: javadoc.windowtitle ->
    Setting project property: dist.war -> dist/TomcatServletExample.war
    Setting project property: javadoc.notree -> false
    Setting project property: dist.ear.war -> dist/TomcatServletExample.war
    -init-macrodef-property:
    +Datatype http://www.netbeans.org/ns/web-project/1:property org.apache.tools.ant.taskdefs.MacroInstance
    -do-ear-init:
    Skipped because property 'dist.ear.dir' not set.
    -do-init:
    Unable to find test
    Condition false; not setting have.tests
    Condition false; not setting netbeans.home+have.tests
    Condition false; not setting no.javadoc.preview
    Override ignored for property javac.compilerargs
    Property ${no.dependencies} has not been set
    Condition false; not setting no.deps
    Condition true; setting no.dist.ear.dir to true
    Setting project property: no.dist.ear.dir -> true
    Override ignored for property build.web.excludes
    Condition false; not setting do.compile.jsps
    Condition true; setting do.display.browser to true
    Setting project property: do.display.browser -> true
    Unable to find src\conf\MANIFEST.MF to set property has.custom.manifest
    Setting project property: build.meta.inf.dir -> build/web/META-INF
    Setting project property: build.classes.dir.real -> build/web/WEB-INF/classes
    Setting project property: build.web.dir.real -> build/web
    -post-init:
    -init-check:
    -init-macrodef-javac:
    +Datatype http://www.netbeans.org/ns/web-project/2:javac org.apache.tools.ant.taskdefs.MacroInstance
    -init-macrodef-junit:
    +Datatype http://www.netbeans.org/ns/web-project/2:junit org.apache.tools.ant.taskdefs.MacroInstance
    -init-macrodef-java:
    Property ${main.class} has not been set
    +Datatype http://www.netbeans.org/ns/web-project/1:java org.apache.tools.ant.taskdefs.MacroInstance
    -init-macrodef-nbjpda:
    Property ${main.class} has not been set
    +Datatype http://www.netbeans.org/ns/web-project/1:nbjpdastart org.apache.tools.ant.taskdefs.MacroInstance
    +Datatype http://www.netbeans.org/ns/web-project/1:nbjpdareload org.apache.tools.ant.taskdefs.MacroInstance
    -init-macrodef-debug:
    Property ${main.class} has not been set
    Property ${application.args} has not been set
    +Datatype http://www.netbeans.org/ns/web-project/1:debug org.apache.tools.ant.taskdefs.MacroInstance
    init:
    deps-module-jar:
    deps-ear-jar:
    Skipped because property 'dist.ear.dir' not set.
    deps-jar:
    -pre-pre-compile:
    -pre-compile:
    -copy-manifest:
    Skipped because property 'has.custom.manifest' not set.
    library-inclusion-in-archive:
    library-inclusion-in-manifest:
    Skipped because property 'dist.ear.dir' not set.
    -do-compile:
    Could not load a dependent class (com/sun/media/jai/codec/FileSeekableStream) for type image
    Could not load a dependent class (com/jcraft/jsch/UserInfo) for type sshexec
    Could not load a dependent class (com/jcraft/jsch/UserInfo) for type scp
    Could not load class (org.apache.tools.ant.tasksdefs.cvslib.CvsVersion) for type cvsversion
    Could not load a dependent class (jdepend/xmlui/JDepend) for type jdepend
    fileset: Setup scanner in dir C:\Documents and Settings\luca.C64\TomcatServletExample1\src with patternSet{ includes: [] excludes: [] }
    CookieExample.java omitted as CookieExample.class is up to date.
    HelloWorldExample.java omitted as HelloWorldExample.class is up to date.
    LocalStrings.properties skipped - don't know how to handle it
    LocalStrings_en.properties skipped - don't know how to handle it
    LocalStrings_es.properties skipped - don't know how to handle it
    LocalStrings_fr.properties skipped - don't know how to handle it
    RequestHeaderExample.java omitted as RequestHeaderExample.class is up to date.
    RequestInfoExample.java omitted as RequestInfoExample.class is up to date.
    RequestParamExample.java omitted as RequestParamExample.class is up to date.
    SessionExample.java omitted as SessionExample.class is up to date.
    compressionFilters\CompressionFilter.java omitted as compressionFilters/CompressionFilter.class is up to date.
    compressionFilters\CompressionFilterTestServlet.java omitted as compressionFilters/CompressionFilterTestServlet.class is up to date.
    compressionFilters\CompressionResponseStream.java omitted as compressionFilters/CompressionResponseStream.class is up to date.
    compressionFilters\CompressionServletResponseWrapper.java omitted as compressionFilters/CompressionServletResponseWrapper.class is up to date.
    filters\ExampleFilter.java omitted as filters/ExampleFilter.class is up to date.
    filters\RequestDumperFilter.java omitted as filters/RequestDumperFilter.class is up to date.
    filters\SetCharacterEncodingFilter.java omitted as filters/SetCharacterEncodingFilter.class is up to date.
    listeners\ContextListener.java omitted as listeners/ContextListener.class is up to date.
    listeners\SessionListener.java omitted as listeners/SessionListener.class is up to date.
    util\HTMLFilter.java omitted as util/HTMLFilter.class is up to date.
    fileset: Setup scanner in dir C:\Documents and Settings\luca.C64\TomcatServletExample1\src with patternSet{ includes: [] excludes: [**/*.java, **/*.form] }
    LocalStrings.properties omitted as LocalStrings.properties is up to date.
    LocalStrings_en.properties omitted as LocalStrings_en.properties is up to date.
    LocalStrings_es.properties omitted as LocalStrings_es.properties is up to date.
    LocalStrings_fr.properties omitted as LocalStrings_fr.properties is up to date.
    omitted as is up to date.
    compressionFilters omitted as compressionFilters is up to date.
    filters omitted as filters is up to date.
    listeners omitted as listeners is up to date.
    util omitted as util is up to date.
    fileset: Setup scanner in dir C:\Documents and Settings\luca.C64\TomcatServletExample1\web with patternSet{ includes: [] excludes: [**/*.java, **/*.form] }
    META-INF\context.xml omitted as META-INF/context.xml is up to date.
    WEB-INF\web.xml omitted as WEB-INF/web.xml is up to date.
    cookies.html omitted as cookies.html is up to date.
    helloworld.html omitted as helloworld.html is up to date.
    images\code.gif omitted as images/code.gif is up to date.
    images\execute.gif omitted as images/execute.gif is up to date.
    images\return.gif omitted as images/return.gif is up to date.
    index.html omitted as index.html is up to date.
    reqheaders.html omitted as reqheaders.html is up to date.
    reqinfo.html omitted as reqinfo.html is up to date.
    reqparams.html omitted as reqparams.html is up to date.
    sessions.html omitted as sessions.html is up to date.
    omitted as is up to date.
    META-INF omitted as META-INF is up to date.
    WEB-INF omitted as WEB-INF is up to date.
    images omitted as images is up to date.
    -post-compile:
    compile:
    compile-jsps:
    Skipped because property 'do.compile.jsps' not set.
    -do-compile-single-jsp:
    Skipped because property 'jsp.includes' not set.
    -pre-dist:
    -do-dist-with-manifest:
    Skipped because property 'has.custom.manifest' not set.
    -do-dist-without-manifest:
    Setting project property: dist.jar.dir -> C:\Documents and Settings\luca.C64\TomcatServletExample1\dist
    fileset: Setup scanner in dir C:\Documents and Settings\luca.C64\TomcatServletExample1\build\web with patternSet{ includes: [] excludes: [] }
    META-INF\context.xml omitted as META-INF/context.xml is up to date.
    WEB-INF\classes\CookieExample.class omitted as WEB-INF/classes/CookieExample.class is up to date.
    WEB-INF\classes\HelloWorldExample.class omitted as WEB-INF/classes/HelloWorldExample.class is up to date.
    WEB-INF\classes\LocalStrings.properties omitted as WEB-INF/classes/LocalStrings.properties is up to date.
    WEB-INF\classes\LocalStrings_en.properties omitted as WEB-INF/classes/LocalStrings_en.properties is up to date.
    WEB-INF\classes\LocalStrings_es.properties omitted as WEB-INF/classes/LocalStrings_es.properties is up to date.
    WEB-INF\classes\LocalStrings_fr.properties omitted as WEB-INF/classes/LocalStrings_fr.properties is up to date.
    WEB-INF\classes\RequestHeaderExample.class omitted as WEB-INF/classes/RequestHeaderExample.class is up to date.
    WEB-INF\classes\RequestInfoExample.class omitted as WEB-INF/classes/RequestInfoExample.class is up to date.
    WEB-INF\classes\RequestParamExample.class omitted as WEB-INF/classes/RequestParamExample.class is up to date.
    WEB-INF\classes\SessionExample.class omitted as WEB-INF/classes/SessionExample.class is up to date.
    WEB-INF\classes\compressionFilters\CompressionFilter.class omitted as WEB-INF/classes/compressionFilters/CompressionFilter.class is up to date.
    WEB-INF\classes\compressionFilters\CompressionFilterTestServlet.class omitted as WEB-INF/classes/compressionFilters/CompressionFilterTestServlet.class is up to date.
    WEB-INF\classes\compressionFilters\CompressionResponseStream.class omitted as WEB-INF/classes/compressionFilters/CompressionResponseStream.class is up to date.
    WEB-INF\classes\compressionFilters\CompressionServletResponseWrapper.class omitted as WEB-INF/classes/compressionFilters/CompressionServletResponseWrapper.class is up to date.
    WEB-INF\classes\filters\ExampleFilter.class omitted as WEB-INF/classes/filters/ExampleFilter.class is up to date.
    WEB-INF\classes\filters\RequestDumperFilter.class omitted as WEB-INF/classes/filters/RequestDumperFilter.class is up to date.
    WEB-INF\classes\filters\SetCharacterEncodingFilter.class omitted as WEB-INF/classes/filters/SetCharacterEncodingFilter.class is up to date.
    WEB-INF\classes\listeners\ContextListener.class omitted as WEB-INF/classes/listeners/ContextListener.class is up to date.
    WEB-INF\classes\listeners\SessionListener.class omitted as WEB-INF/classes/listeners/SessionListener.class is up to date.
    WEB-INF\classes\util\HTMLFilter.class omitted as WEB-INF/classes/util/HTMLFilter.class is up to date.
    WEB-INF\web.xml omitted as WEB-INF/web.xml is up to date.
    cookies.html omitted as cookies.html is up to date.
    helloworld.html omitted as helloworld.html is up to date.
    images\code.gif omitted as images/code.gif is up to date.
    images\execute.gif omitted as images/execute.gif is up to date.
    images\return.gif omitted as images/return.gif is up to date.
    index.html omitted as index.html is up to date.
    reqheaders.html omitted as reqheaders.html is up to date.
    reqinfo.html omitted as reqinfo.html is up to date.
    reqparams.html omitted as reqparams.html is up to date.
    sessions.html omitted as sessions.html is up to date.
    do-dist:
    -post-dist:
    dist:
    run-deploy:
    In-place deployment at C:\Documents and Settings\luca.C64\TomcatServletExample1\build\web
    Server returned HTTP response code: 403 for URL: http://localhost:8080/manager/deploy?config=file:/C:/DOCUME~1/luca.C64/IMPOST~1/Temp/context33857.xml&path=/TomcatServletExample1
    C:\Documents and Settings\luca.C64\TomcatServletExample1\nbproject\build-impl.xml:355: Deployment failed.
    at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.java:85)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
    at org.apache.tools.ant.Task.perform(Task.java:364)
    at org.apache.tools.ant.Target.execute(Target.java:341)
    at org.apache.tools.ant.Target.performTasks(Target.java:369)
    at org.apache.tools.ant.Project.e

  • Advanced "Save as PDF" script that saves 2 PDF presets with 2 different Names

    HI Everyone,
    I am looking to improve a save as pdf workflow and was hoping to get some direction. Here is the background...
    I routinely have to save numerous files as 2 separate PDFs with different settings (a high res printable version and a low res email version). Each file has to be renamed as follows...
    Original filename = MikesPDF.ai
    High Res PDF Filename = MikesPDF_HR.pdf
    Low Res PDF Filename = MikesPDF_LR.pdf
    I was able to alter the default "SaveAsPDF" script to save the files to my desired settings and to add the suffix to the name. So with these scripts here is how the workflow operates...
    1. Open all files I wish to save as pdfs
    2. Select script to save files as high res pdfs
    3. Illustrator asks me to choose a destination.
    4. Illustrator adds the appropriate suffix and saves each file as a pdf to my desired setting. ("Save As" not "Save a Copy").
    5. Now all of the open windows are the new pdfs, not the original ai files.
    6. Now I have to close each window. For some reason Illustrator asks me if I want to save each document when I tell it to close window, even though the file was just saved. I tell it to not save and everything seems to be fine.
    7. Reopen all the files I just saved as high res pdfs.
    8. Repeat the entire process except I run the script specifically designed for the low res pdfs.
    What I would like to do is to combine these two processes so that there will be one script that saves both pdfs. From what I understand, the script can't support "Save A Copy" so the workflow would go as follows...
    1. Open all files I wish to save as pdfs
    2. Select single script to save files as both high res and low res pdfs
    3. Illustrator asks me to choose a destination.
    4. Illustrator saves each file as a High Res PDF and adds the the "_HR" suffix.
    5. Illustrator then re-saves the open windows as a Low Res PDF and replaces the "_HR" suffix with "_LR".
    Here is the code for the High Res script, The Low Res script is pretty much the same except for a different preset name and different suffix. Any pointer that anyone could give me would be most appreciated. I am pretty much a noob to this stuff so please keep that in mind.
    Thanks!
    Mike
    ---------------------------CODE----------------------------
    /** Saves every document open in Illustrator
      as a PDF file in a user specified folder.
    // Main Code [Execution of script begins here]
    try {
      // uncomment to suppress Illustrator warning dialogs
      // app.userInteractionLevel = UserInteractionLevel.DONTDISPLAYALERTS;
      if (app.documents.length > 0 ) {
      // Get the folder to save the files into
      var destFolder = null;
      destFolder = Folder.selectDialog( 'Select folder for PDF files.', '~' );
      if (destFolder != null) {
      var options, i, sourceDoc, targetFile;
      // Get the PDF options to be used
      options = this.getOptions();
      // You can tune these by changing the code in the getOptions() function.
      for ( i = 0; i < app.documents.length; i++ ) {
      sourceDoc = app.documents[i]; // returns the document object
      // Get the file to save the document as pdf into
      targetFile = this.getTargetFile(sourceDoc.name, '.pdf', destFolder);
      // Save as pdf
      sourceDoc.saveAs( targetFile, options );
      alert( 'Documents saved as PDF' );
      else{
      throw new Error('There are no document open!');
    catch(e) {
      alert( e.message, "Script Alert", true);
    /** Returns the options to be used for the generated files. --------------------CHANGE PDF PRESET BELOW, var NamePreset = ----------------
      @return PDFSaveOptions object
    function getOptions()
    {var NamePreset = 'Proof High Res PDF';
      // Create the required options object
      var options = new PDFSaveOptions();
         options.pDFPreset="High Res PDF";
      // See PDFSaveOptions in the JavaScript Reference for available options
      // Set the options you want below:
      // For example, uncomment to set the compatibility of the generated pdf to Acrobat 7 (PDF 1.6)
      // options.compatibility = PDFCompatibility.ACROBAT7;
      // For example, uncomment to view the pdfs in Acrobat after conversion
      // options.viewAfterSaving = true;
      return options;
    /** Returns the file to save or export the document into.----------------CHANGE FILE SUFFIX ON LINE BELOW, var newName = ------------------
      @param docName the name of the document
      @param ext the extension the file extension to be applied
      @param destFolder the output folder
      @return File object
    function getTargetFile(docName, ext, destFolder) {
      var newName = "_HR";
      // if name has no dot (and hence no extension),
      // just append the extension
      if (docName.indexOf('.') < 0) {
      newName = docName + ext;
      } else {
      var dot = docName.lastIndexOf('.');
      newName = docName.substring(0, dot)+newName;
      newName += ext;
      // Create the file object to save to
      var myFile = new File( destFolder + '/' + newName );
      // Preflight access rights
      if (myFile.open("w")) {
      myFile.close();
      else {
      throw new Error('Access is denied');
      return myFile;

    Thank you for the reply Bob!
    Am I correct in assuming that these few lines of code replace all of the lines that I posted above?
    Also, When populating the PDFSaveOptions lines, would the end result look like this? FYI, LowRes preset name = "Proof Low Res PDF - CMYK". HighRes preset name = "Proof High Res PDF"
    #target illustrator
    #targetengine "main"
    for (x=0;x<app.documents.length;x++)
         var workingDoc = app.documents[x];
         var workingDocFile = workingDoc.fullName;
    // populate these with your settings
         var lowResOpts = new PDFSaveOptions(Proof Low Res PDF - CMYK);
         var highResOpts = new PDFSaveOptions(Proof High Res PDF);
         var lowResFile = new File(workingDocFile.toString().replace(".ai","_LR.pdf"));
         workingDoc.saveAs(lowResFile,lowResOpts);
         var highResFile = new File(workingDocFile.toString().replace(".ai","_HR.pdf"));
         workingDoc.saveAs(highResFile,highResOpts);
         workingDoc.close(SaveOptions.DONOTSAVECHANGES);

  • Script for making an object the artboard size.

    I am looking for some help on trying to make an object the exact size of the artboard.  This is something I do on a daily basis for several different reasons and it would be very helpful if this can happen automatically for whatever size the artboard may be.  As I understand it the only way is with a script but I have no experience with making illustrator scripts, im definately no programmer.  I have set up quickkeys in the past to copy from the artboard inputs when you are on the artboard tool but these round to the nearest .01 and this is not accurate enough for what I am working with.  Also if I do this with multiple pages open illustrator is very slow to respond to the artboard tool.  If anyone has any idea where to start or has seen other such scripts I would greatly appreciate it.  Thank you.
    Below is a script that I saw on here that I believe may contain what I need but now knowing programming I have no idea where to start on editing.  All I need is the part where an object is placed on the artboard that is the exact same size as the artboard.  If anyone can advise on editing I would greatly apprecaite it.
    #target illustrator
    function main() {
         if (app.documents.length == 0) {
              alert('Open a document before running this script');
              return; // Stop script here no doc open…
         } else {
              var docRef = app.activeDocument;
              with (docRef) {
                   if (selection.length == 0) {
                        alert('No items are selected…');
                        return; // Stop script here with no selection…
                   if (selection.length > 1) {
                        alert('Too many items are selected…');
                        return; // Stop script here with selection Array…
                   } else {                   
                        var selVB = selection[0].visibleBounds;
                        var rectTop = selVB[1] + 36;
                        var rectLeft = selVB[0] - 36;
                        var rectWidth = (selVB[2] - selVB[0]) + 72;
                        var rectHeight = (selVB[1] - selVB[3]) + 72;              
                        selection[0].parent.name = 'CC';
                        selection[0].filled = false;
                        selection[0].stroked = true;
                        var ccColor = cmykColor(0, 100, 0, 0);              
                        var ccCol = spots.add()
                        ccCol.name = 'CC';
                        ccCol.color = ccColor;
                        ccCol.tint = 100;
                        ccCol.colorType = ColorModel.SPOT;
                        var cc = new SpotColor();
                        cc.spot = ccCol;                   
                        selection[0].strokeColor = cc;
                        selection[0].strokeWidth = 1;                   
                        var tcLayer = layers.add();
                        tcLayer.name = 'TC';
                        var padBox = pathItems.rectangle(rectTop, rectLeft, rectWidth, rectHeight, false);
                        padBox.stroked = false;
                        padBox.filled = true;
                        var tcColor = cmykColor(0, 100, 90, 0);         
                        var tcCol = spots.add()
                        tcCol.name = 'TC';
                        tcCol.color = tcColor;
                        tcCol.tint = 100;
                        tcCol.colorType = ColorModel.SPOT;
                        var tc = new SpotColor();
                        tc.spot = tcCol;
                        padBox.fillColor = tc;    
                        padBox.move(docRef, ElementPlacement.PLACEATEND);
                        artboards[0].artboardRect = (padBox.visibleBounds);
                        redraw();
                        rectWidth = (rectWidth-72)/72;
                        rectWidth = roundToDP(rectWidth,1);
                        rectHeight = (rectHeight-72)/72;
                        rectHeight = roundToDP(rectHeight,1);
                        var textString = rectWidth + ' x ' + rectHeight;
                        prompt('Copy Me', textString);
    main();
    function roundToDP(nbr, dP) {
         dpNbr = Math.round(nbr*Math.pow(10,dP))/Math.pow(10,dP);
         return dpNbr;
    function cmykColor(c, m, y, k) {
         var newCMYK = new CMYKColor();
         newCMYK.cyan = c;
         newCMYK.magenta = m;
         newCMYK.yellow = y;
         newCMYK.black = k;
         return newCMYK;

    Thanks to CarlosCanto for the original script, it was very a very helpful starting point to optimize one of our workflows. We customized it a bit to maintain the aspect ratio (just takes the greater of the width / height and scales proportionally to the artboard size), and also center up the object in the middle of the artboard once scaling is complete. I hope it is helpful to someone:
    #target Illustrator
    //  script.name = fitObjectToArtboardBounds.jsx;
    //  script.description = resizes selected object to fit exactly to Active Artboard Bounds;
    //  script.required = select ONE object before running; CS4 & CS5 Only.
    //  script.parent = carlos canto // 01/25/12;
    //  script.elegant = false;
    var idoc = app.activeDocument;
    selec = idoc.selection;
    if (selec.length==1)
            // get document bounds
            var docw = idoc.width;
            var doch = idoc.height;
            var activeAB = idoc.artboards[idoc.artboards.getActiveArtboardIndex()]; // get active AB
            docLeft = activeAB.artboardRect[0];
            docTop = activeAB.artboardRect[1];
            // get selection bounds
            var sel = idoc.selection[0];
            var selVB = sel.visibleBounds;
            var selVw = selVB[2]-selVB[0];
            var selVh = selVB[1]-selVB[3];
            var selGB = sel.geometricBounds;
            var selGw = selGB[2]-selGB[0];
            var selGh = selGB[1]-selGB[3];
            // get the difference between Visible & Geometric Bounds
            var deltaX = selVw-selGw;
            var deltaY = selVh-selGh;
            if (sel.width > sel.height) {
                var newWidth = docw-deltaX;
                var ratio = sel.width / newWidth;
                sel.width = newWidth; // width is Geometric width, so we need to make it smaller...to accomodate the visible portion.
                sel.height = sel.height * ratio;
            } else {
                var newHeight = doch-deltaY;
                var ratio = sel.height / newHeight;
                sel.height = newHeight;
                sel.width = sel.width / ratio;
            sel.top = (doch / 2) - (sel.height / 2);
            sel.left = (docw / 2) - (sel.width / 2);
        else
                alert("select ONE object before running");

  • Script for Document Setup size...

    Hello All,
         I have a request for a script, not sure how one would go about it but here we go.
    An AI CS4 user selects a shape, they then execute a script that...
    Resizes the Document Setup Art Board to one inch larger (length width) than the selected shape.
    Then a rectangle is drawn in the document and is sized the same as the art board.
    Any help would be great!!!
    Thanks in advanced.
    Anton

    All,
         I am tweaking this script again and have run into a road block that you may have a simple answer for.  When I execute this script when selecting a single object it works perfect, if I execute it while selecting a group of objects the script will not apply the spot color to the selection.  The script will however do everything but apply the spot color.  Here is the latest edit. Thanks for any input.
    Anton
    #target illustrator
    function main() {
         if (app.documents.length == 0) {
              alert('Open a document before running this script');
              return; // Stop script here no doc open…
         } else {
              var docRef = app.activeDocument;
              with (docRef) {
                   if (selection.length == 0) {
                        alert('No items are selected…');
                        return; // Stop script here with no selection…
                   if (selection.length > 1) {
                        alert('Too many items are selected…');
                        return; // Stop script here with selection Array…
                   } else {
                        var ccSpotColor = cmykColor(0, 100, 0, 0);
                        var ccCol = spots.add()
                        ccCol.name = 'CC';
                        ccCol.color = ccSpotColor;
                        ccCol.tint = 100;
                        ccCol.colorType = ColorModel.SPOT;
                        var cc = new SpotColor();
                        cc.spot = ccCol;
                        var selVB = selection[0].visibleBounds;
                        var rectTop = selVB[1] + 36;
                        var rectLeft = selVB[0] - 36;
                        var rectWidth = (selVB[2] - selVB[0]) + 72;
                        var rectHeight = (selVB[1] - selVB[3]) + 72;
                        selection[0].parent.name = 'ARTWORK';
                        selection[0].filled = false;
                        selection[0].stroked = true;
                        selection[0].strokeColor = cc;
                        selection[0].strokeWidth = 1;
                        var regLayer = layers.add(); // Creates Regmark Layer
                        regLayer.name = 'Regmark';
                        var tcLayer = layers.add(); // Creates TC Layer
                        tcLayer.name = 'Through Cut';
                        var ccLayer = layers.add(); // Creates CC Layer
                        ccLayer.name = 'CC';
                             var Cutline = selection[0]
                             Cutline.move(ccLayer, ElementPlacement.INSIDE);
                             var ThroughCutBox = tcLayer.pathItems.rectangle(rectTop, rectLeft, rectWidth, rectHeight, false); //This is TC box
                        ThroughCutBox.stroked = false;
                        ThroughCutBox.filled = true;
                        var tcSpotColor = cmykColor(0, 100, 90, 0);
                        var tcCol = spots.add()
                        tcCol.name = 'TC';
                        tcCol.color = tcSpotColor;
                        tcCol.tint = 100;
                        tcCol.colorType = ColorModel.SPOT;
                        var tc = new SpotColor();
                        tc.spot = tcCol;
                        ThroughCutBox.fillColor = tc;
                             tcLayer.visible = false;// Make TC Layer Invisable     Here
                        artboards[0].artboardRect = (ThroughCutBox.visibleBounds);
                        redraw();
                        rectWidth = (rectWidth-72)/72;
                        rectWidth = roundToDP(rectWidth,1);
                        rectHeight = (rectHeight-72)/72;
                        rectHeight = roundToDP(rectHeight,1);
                        var textString = rectWidth + ' x ' + rectHeight;
                        prompt('Copy Me', textString);
    main();
    function roundToDP(nbr, dP) {
         dpNbr = Math.round(nbr*Math.pow(10,dP))/Math.pow(10,dP);
         return dpNbr;
    function cmykColor(c, m, y, k) {
         var newCMYK = new CMYKColor();
         newCMYK.cyan = c;
         newCMYK.magenta = m;
         newCMYK.yellow = y;
         newCMYK.black = k;
         return newCMYK;

  • Save as PCX

    I'm currently work with an old script I found here on the forums. Originally found here: http://forums.adobe.com/thread/488255
    I've toyed with it a bit but to no avail, since I have no idea what I am doing.
    Basically I want one of the output options to be .PCX format.
    #target photoshop
    function main(){
    var LSets = activeDocument.layerSets.length;
    var ArtLayers = activeDocument.artLayers.length;
    var NoOfLayers = activeDocument.layers.length;
    var Back = hasBackground();
    var hasTop = false;
    var selLayers =getSelectedLayersIdx();
    var selGroups=[];
    if(LSets>0){
        for(var s in selLayers){
       if(isLayerSet(selLayers[s])) selGroups.push(selLayers[s]);
    if(activeDocument.layers[0].typename == 'ArtLayer') hasTop = true;
    var win = new Window('dialog','Layer Saver');
    g = win.graphics;
    var myBrush = g.newBrush(g.BrushType.SOLID_COLOR, [0.99, 0.99, 0.99, 1]);
    g.backgroundColor = myBrush;
    win.p1= win.add("panel", undefined, undefined, {borderStyle:"black"});
    win.p1.preferredSize=[500,20];
    win.g1 = win.p1.add('group');
    win.g1.orientation = "row";
    win.title = win.g1.add('statictext',undefined,'Layer Saver');
    win.title.alignment="fill";
    var g = win.title.graphics;
    g.font = ScriptUI.newFont("Georgia","BOLDITALIC",22);
    win.g5 =win.p1.add('group');
    win.g5.orientation = "column";
    win.g5.alignChildren='left';
    win.g5.spacing=0;
    if(LSets == 0){
    win.g5.rb1 = win.g5.add('radiobutton',undefined,'Save selected layers');
    win.g5.rb2 = win.g5.add('radiobutton',undefined,'Save selected layers along with the top layer');
    win.g5.rb3 = win.g5.add('radiobutton',undefined,'Save selected layers along with background layer');
    win.g5.rb4 = win.g5.add('radiobutton',undefined,'Save all layers');
    win.g5.rb5 = win.g5.add('radiobutton',undefined,'Save all layers along with the top layer');
    win.g5.rb6 = win.g5.add('radiobutton',undefined,'Save all layers along with background layer');
    win.g5.rb3.enabled=Back;
    win.g5.rb6.enabled=Back;
    win.g5.rb4.value=true;
    }else{
    win.g5.rb1 = win.g5.add('radiobutton',undefined,'Save selected layerSets');
    win.g5.rb2 = win.g5.add('radiobutton',undefined,'Save selected layerSets along with the top layer');
    win.g5.rb3 = win.g5.add('radiobutton',undefined,'Save selected layerSets along with background layer');
    win.g5.rb4 = win.g5.add('radiobutton',undefined,'Save all layerSets');
    win.g5.rb5 = win.g5.add('radiobutton',undefined,'Save all layerSets along with the top layer');
    win.g5.rb6 = win.g5.add('radiobutton',undefined,'Save all layerSets along with background layer');
    win.g5.rb3.enabled=Back;
    win.g5.rb6.enabled=Back;
    win.g5.rb2.enabled=hasTop;
    win.g5.rb5.enabled=hasTop;
    if(selGroups.length <1){
        win.g5.rb1.enabled=false;
        win.g5.rb2.enabled=false;
        win.g5.rb3.enabled=false;
    win.g5.rb4.value=true;
    win.p2 = win.add("panel", undefined, undefined, {borderStyle:"black"});
    win.p2.preferredSize=[500,20];
    win.p2.st1 = win.p2.add('statictext',undefined,'Output details');
    win.p2.st1.graphics.font = ScriptUI.newFont("Tahoma", "Bold", 18);
    win.g10 =win.p2.add('group');
    win.g10.orientation = "row";
    win.g10.alignment='left';
    win.g10.et1 = win.g10.add('edittext');
    win.g10.et1.preferredSize=[350,20];
    win.g10.bu1 = win.g10.add('button',undefined,'Select Folder');
    win.g10.bu1.onClick=function(){
    var Folder1 = Folder(app.activeDocument.path);
    outputFolder = Folder.selectDialog("Please select the output folder",Folder1);
    if(outputFolder !=null){
      win.g10.et1.text =  decodeURI(outputFolder.fsName);
    win.g12 =win.p2.add('group');
    win.g12.orientation = "row";
    win.g12.alignment='left';
    win.g12.cb1 = win.g12.add('checkbox',undefined,'Merge Visible Layers?');
    win.g12.cb2 = win.g12.add('checkbox',undefined,'Trim Layer');
    win.g15 =win.p2.add('group');
    win.g15.orientation = "row";
    win.g15.alignment='left';
    var Options= ["Layer/Group Name","FileName + Sequence No.","FileName + Layer/Group Name ","User Defined with Sequence No."];
    win.g15.st1 = win.g15.add('statictext',undefined,'Save Options..');
    win.g15.dd1 = win.g15.add('dropdownlist',undefined,Options);
    win.g15.dd1.selection=0;
    win.g15.et1 = win.g15.add('edittext');
    win.g15.et1.preferredSize=[150,20];
    win.g15.et1.hide();
    win.g15.dd1.onChange=function(){
      if(this.selection.index==3){
          win.g15.et1.show();
          }else{
              win.g15.et1.hide();
    win.g18 =win.p2.add('group');
    win.g18.orientation = "row";
    win.g18.st1 = win.g18.add('statictext',undefined,'Save as :');
    var Types = ["PNG","PCX","PSD","PDF","TIF","JPG"];
    win.g18.dd1 = win.g18.add('dropdownlist',undefined,Types);
    win.g18.dd1.selection = 0;
    win.g18.alignment='left';
    win.g20 =win.p2.add('group');
    win.g20.orientation = "row";
    win.g20.bu1 = win.g20.add('button',undefined,'Process');
    win.g20.bu1.preferredSize=[200,35];
    win.g20.bu2 = win.g20.add('button',undefined,'Cancel');
    win.g20.bu2.preferredSize=[200,35];
    win.g20.bu1.onClick=function(){
        if(win.g10.et1.text == ''){
            alert("No Output Folder has been Selected!");
            return;
        if(win.g15.dd1.selection.index==3){
            if(win.g15.et1.text ==''){
                alert("No FileName Has Been Entered!");
                return;
        win.close(1);
    Process();
    win.center();
    win.show();
    function Process(){
    if(LSets == 0){
    //Process layers only
    if(win.g5.rb1.value){//Save selected layers
    for(var b in selLayers){
        selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
        if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
         if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save selected layers
    if(win.g5.rb2.value){//Save selected layers along with the top layer
    for(var b in selLayers){
        selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer= activeDocument.layers[0];
        selectLayerByIndex(Number(selLayers[b]),true);
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
        if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save selected layers along with the top layer
    if(win.g5.rb3.value){//Save selected layers along with background layer
        for(var b in selLayers){
        selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer = activeDocument.layers[activeDocument.layers.length-1];
        selectLayerByIndex(Number(selLayers[b]),true);
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save selected layers along with background layer
    if(win.g5.rb4.value){//Save all layers
    selectAllLayers();
    selLayers =getSelectedLayersIdx();
    for(var b in selLayers){
         selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layers
    if(win.g5.rb5.value){//Save all layers along with the top layer
    selectAllLayers(1);
    selLayers =getSelectedLayersIdx();
    for(var b in selLayers){
        selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer = activeDocument.layers[0];
        selectLayerByIndex(Number(selLayers[b]),true);
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layers along with the top layer
    if(win.g5.rb6.value){//Save all layers along with background layer
    selectAllLayers();
    selLayers =getSelectedLayersIdx();
        for(var b in selLayers){
        selectLayerByIndex(Number(selLayers[b]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer = activeDocument.layers[activeDocument.layers.length-1];
        selectLayerByIndex(Number(selLayers[b]),true);
        var saveFile= File(outputFolder+ "/" + getName(b,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layers along with background layer
        }else{
    //Process LayerSets Only
    if(win.g5.rb1.value){//Save selected layerSets
        for(var g in selGroups){
            selectLayerByIndex(Number(selGroups[g]));
            var lName = activeDocument.activeLayer.name;
            var saveFile= File(outputFolder+ "/" + getName(g,lName));
            dupLayers();
                if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
       }//End Save selected layerSets
    if(win.g5.rb2.value){//Save selected layerSets along with the top layer
        for(var g in selGroups){
            selectLayerByIndex(Number(selGroups[g]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer= activeDocument.layers[0];
        selectLayerByIndex(Number(selGroups[g]),true);
        var saveFile= File(outputFolder+ "/" + getName(g,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save selected layerSets along with the top layer
    if(win.g5.rb3.value){//Save selected layerSets along with background layer
        for(var g in selGroups){
        selectLayerByIndex(Number(selGroups[g]));
         var lName = activeDocument.activeLayer.name;
        activeDocument.activeLayer = activeDocument.layers[activeDocument.layers.length-1];
        selectLayerByIndex(Number(selGroups[g]),true);
        var saveFile= File(outputFolder+ "/" + getName(g,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save selected layerSets along with background layer
    if(win.g5.rb4.value){//Save all layerSets
        for(var g =0;g<LSets;g++){
             activeDocument.activeLayer = activeDocument.layerSets[g];
             var lName = activeDocument.activeLayer.name;
             var saveFile= File(outputFolder+ "/" + getName(g,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layerSets
    if(win.g5.rb5.value){//Save all layerSets along with the top layer
        activeDocument.activeLayer = activeDocument.layers[0];
        var TopIDX =getSelectedLayersIdx();
         for(var g =0;g<LSets;g++){
             activeDocument.activeLayer = activeDocument.layerSets[g];
             var lName = activeDocument.activeLayer.name;
             selectLayerByIndex(Number(TopIDX[0]),true);
             var saveFile= File(outputFolder+ "/" + getName(g,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layerSets along with the top layer
    if(win.g5.rb6.value){//Save all layerSets along with background layer
             for(var g =0;g<LSets;g++){
             activeDocument.activeLayer = activeDocument.layerSets[g];
             var lName = activeDocument.activeLayer.name;
             selectLayerByIndex(0,true);
             var saveFile= File(outputFolder+ "/" + getName(g,lName));
        dupLayers();
            if(win.g12.cb1.value){
            try{activeDocument.mergeVisibleLayers();}catch(e){}
        if(win.g12.cb2.value){
             try{activeDocument.trim(TrimType.TRANSPARENT,true,true,true,true);}catch(e){}
        SaveDOC(saveFile);
        app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
        }//End Save all layerSets along with background layer
    function getName(seq,lName){
    seq = zeroPad((Number(seq)+1), 3);
    var dName = decodeURI(activeDocument.name).replace(/\.[^\.]+$/, '');
    var Name ='';
    switch (Number(win.g15.dd1.selection.index)){
        case 0: Name += lName; break;
        case 1: Name += dName +"-"+seq; break;
        case 2: Name += dName +"-"+ lName; break;
        case 3: Name += win.g15.et1.text + "-"+seq; break;
        default :break;
    return Name;
    function SaveDOC(saveFile){
        switch(Number(win.g18.dd1.selection.index)){
            case 0 : SavePNG(File(saveFile+".png")); break;
            case 1 : SavePCX(File(saveFile+".pcx")); break;
            case 2:  SavePSD(File(saveFile+".psd")); break;
            case 3:  SavePDF(File(saveFile+".pdf")); break;
            case 4:  SaveTIFF(File(saveFile+".tif")); break;
            case 5:  SaveJPG(File(saveFile+".jpg"),12); break;
            default : break;
    main();
    function hasBackground() {
       var ref = new ActionReference();
       ref.putProperty( charIDToTypeID("Prpr"), charIDToTypeID( "Bckg" ));
       ref.putEnumerated(charIDToTypeID( "Lyr " ),charIDToTypeID( "Ordn" ),charIDToTypeID( "Back" ));
       var desc =  executeActionGet(ref);
       var res = desc.getBoolean(charIDToTypeID( "Bckg" ));
       return res   
    function getSelectedLayersIdx(){
          var selectedLayers = new Array;
          var ref = new ActionReference();
          ref.putEnumerated( charIDToTypeID("Dcmn"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
          var desc = executeActionGet(ref);
          if( desc.hasKey( stringIDToTypeID( 'targetLayers' ) ) ){
             desc = desc.getList( stringIDToTypeID( 'targetLayers' ));
              var c = desc.count
              var selectedLayers = new Array();
              for(var i=0;i<c;i++){
                try{
                   activeDocument.backgroundLayer;
                   selectedLayers.push(  desc.getReference( i ).getIndex() );
                }catch(e){
                   selectedLayers.push(  desc.getReference( i ).getIndex()+1 );
           }else{
             var ref = new ActionReference();
             ref.putProperty( charIDToTypeID("Prpr") , charIDToTypeID( "ItmI" ));
             ref.putEnumerated( charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
             try{
                activeDocument.backgroundLayer;
                selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" ))-1);
             }catch(e){
                selectedLayers.push( executeActionGet(ref).getInteger(charIDToTypeID( "ItmI" )));
          return selectedLayers;
    function isLayerSet(idx) {        
       var ref = new ActionReference();
       ref.putIndex(1283027488, idx);
       var desc =  executeActionGet(ref);
       var type = desc.getEnumerationValue(stringIDToTypeID("layerSection"));
       var res = typeIDToStringID(type);
       if(res == 'layerSectionStart') return true;
           return false;  
    function dupLayers() {
        var desc143 = new ActionDescriptor();
            var ref73 = new ActionReference();
            ref73.putClass( charIDToTypeID('Dcmn') );
        desc143.putReference( charIDToTypeID('null'), ref73 );
        desc143.putString( charIDToTypeID('Nm  '), activeDocument.activeLayer.name );
            var ref74 = new ActionReference();
            ref74.putEnumerated( charIDToTypeID('Lyr '), charIDToTypeID('Ordn'), charIDToTypeID('Trgt') );
        desc143.putReference( charIDToTypeID('Usng'), ref74 );
        executeAction( charIDToTypeID('Mk  '), desc143, DialogModes.NO );
    function selectLayerByIndex(index,add){
    add = (add == undefined)  ? add = false : add;
    var ref = new ActionReference();
        ref.putIndex(charIDToTypeID("Lyr "), index);
        var desc = new ActionDescriptor();
        desc.putReference(charIDToTypeID("null"), ref );
           if(add) desc.putEnumerated( stringIDToTypeID( "selectionModifier" ), stringIDToTypeID( "selectionModifierType" ), stringIDToTypeID( "addToSelection" ) );
          desc.putBoolean( charIDToTypeID( "MkVs" ), false );
       try{
        executeAction(charIDToTypeID("slct"), desc, DialogModes.NO );
    }catch(e){}
    function selectAllLayers(layer) {//does not select background layer
    if(layer == undefined) layer = 0;
    activeDocument.activeLayer = activeDocument.layers[activeDocument.layers.length-1];
    if(activeDocument.activeLayer.isBackgroundLayer)
    activeDocument.activeLayer = activeDocument.layers[activeDocument.layers.length-2];
    var BL = activeDocument.activeLayer.name;
    activeDocument.activeLayer = activeDocument.layers[layer];
        var desc5 = new ActionDescriptor();
            var ref3 = new ActionReference();
            ref3.putName( charIDToTypeID('Lyr '), BL);
        desc5.putReference( charIDToTypeID('null'), ref3 );
        desc5.putEnumerated( stringIDToTypeID('selectionModifier'), stringIDToTypeID('selectionModifierType'), stringIDToTypeID('addToSelectionContinuous') );
        desc5.putBoolean( charIDToTypeID('MkVs'), false );
        executeAction( charIDToTypeID('slct'), desc5, DialogModes.NO );
    function zeroPad(n, s) {
       n = n.toString();
       while (n.length < s)  n = '0' + n;
       return n;
    function SavePNG(saveFile){
    pngSaveOptions = new PNGSaveOptions();
    activeDocument.saveAs(saveFile, pngSaveOptions, true, Extension.LOWERCASE);
    function SavePCX(saveFile){
    pcxSaveOptions = new PCXSaveOptions();
    activeDocument.saveAs(saveFile, pcxSaveOptions, true, Extension.LOWERCASE);
    function SaveTIFF(saveFile){
    tiffSaveOptions = new TiffSaveOptions();
    tiffSaveOptions.embedColorProfile = true;
    tiffSaveOptions.alphaChannels = true;
    tiffSaveOptions.layers = true;
    tiffSaveOptions.imageCompression = TIFFEncoding.TIFFLZW;
    activeDocument.saveAs(saveFile, tiffSaveOptions, true, Extension.LOWERCASE);
    function SavePSD(saveFile){
    psdSaveOptions = new PhotoshopSaveOptions();
    psdSaveOptions.embedColorProfile = true;
    psdSaveOptions.alphaChannels = true; 
    activeDocument.saveAs(saveFile, psdSaveOptions, true, Extension.LOWERCASE);
    function SavePDF(saveFile){
    pdfSaveOptions = new PDFSaveOptions();
    activeDocument.saveAs(saveFile, pdfSaveOptions, true, Extension.LOWERCASE);
    function SaveJPG(saveFile, jpegQuality){
    jpgSaveOptions = new JPEGSaveOptions();
    jpgSaveOptions.embedColorProfile = true;
    jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE;
    jpgSaveOptions.matte = MatteType.NONE;
    jpgSaveOptions.quality = jpegQuality; //1-12
    activeDocument.saveAs(saveFile, jpgSaveOptions, true,Extension.LOWERCASE);
    I purely guessed that this was the line of script to save as a PCX file but it didn't work upon execution. It isolates a group to save but then just stops.
    function SavePCX(saveFile){
    pcxSaveOptions = new PCXSaveOptions();
    activeDocument.saveAs(saveFile, pcxSaveOptions, true, Extension.LOWERCASE);
    I've been looking everywhere for an answer, but it seems like not one has ever had to have a script like this. I'm running CS6 of that helps.

    c.pfaffenbichler wrote: Where in the documentation did you find the class PCXSaveOptions? I can’t find it in ESTK’s Object Model Viewer.
    I'm not familiar with this coding whatsoever, so I just guessed based on PNG's save function. I copy pasted and guessed hoping it would work.
    c.pfaffenbichler wrote:
    I guess you should record a PCX-save with ScriptingListener.plugin and then use the resulting Action Manager-code wrapped in a function.
    I used the recommended plugin and got this in the log:
    var idsave = charIDToTypeID( "save" );
        var desc2 = new ActionDescriptor();
        var idAs = charIDToTypeID( "As  " );
        desc2.putString( idAs, """PCX""" );
        var idIn = charIDToTypeID( "In  " );
        desc2.putPath( idIn, new File( "Y:\\RSP001.pcx" ) );
        var idDocI = charIDToTypeID( "DocI" );
        desc2.putInteger( idDocI, 314 );
        var idsaveStage = stringIDToTypeID( "saveStage" );
        var idsaveStageType = stringIDToTypeID( "saveStageType" );
        var idsaveBegin = stringIDToTypeID( "saveBegin" );
        desc2.putEnumerated( idsaveStage, idsaveStageType, idsaveBegin );
    executeAction( idsave, desc2, DialogModes.NO );
    I have no clue what I am looking for.

Maybe you are looking for

  • 7.1.6 update broke enhanced podcast in safari

    hi. i'm seeing some issues about the 7.1.6 update in the boards, but none that are quite what i'm experiencing. after applying the update i can view flash movies, and files from youtube, etc.; it is only the enhanced podcasts (in this case on an rss

  • Cover Flow doesn't work fine.

    After I downloaded video podcasts (Best of youtube) I can't see my albums in Cover Flow. I see my videos! Only when I select an album, the correct picture appears. I also tried to Restore my iPod and after restore, when I downloaded again the podcast

  • BAPI functions for file upload

    Hi All, can anyone  tell me Bapi functions for the file or image upload using? With best regards, Suneetha

  • Image Verification Error

    My client has been reportng issues to me about when some people try to submit an application on their site that they recieve the error message "Image Verification Error". I had submitted a ticket to BC about this and was informed that there was some

  • Finder Freezes when I try to get file info

    G5, OSX 3.9 Occasionally finder will freeze and become unresponsive when I try to check a file's info. I control+click on the file and the drop down menu appears normally, but when I click "Get Info" the Finder freezes; I get the spinning colour whee