Confusion about third-party-libraries in different versions in CE 71.

Hi
After some research on the use of different versions of third-party-libraries in SAP netweaver CE 7.1, I am actually quite confused and would be happy if someone could shed a light on that subject....
1. Is there a way to tell netweaver CE 7.1 to use a library in my WEB-INFlib-folder by simple configuration?
E.g. we would like to use a third-party-lib in a newer version than the one which is loaded by CE 7.1. Many application server provide a simple configuration option (e.g inside META-INFapplication.xml) where the web as can be forced to use the library inside WEB-INFlib for this application.
2.Is the concept of "heavy loading" described in a blog by Georgi Danov(Using Hibernate in SAP NetWeaver Composition Environment) the answer to question 1.?
Does it also work for other third-party-libraries than hibernate? Does it work at all?
3. In the blog mentioned in question 2, Mr. Danov is talking about "shared libraries". Does this mean, that I have to forget everything about "bundled" and "standard" libraries explained in help.sap.com/CE, if I want to create a heavy loader?
He is referencing another blog (Applications and shared libraries) which is two years old? Can I still apply the information there to CE?
4. Are "Bundled libraries" applicable when using different versions of third-party-libraries in CE 7.1?
In "Working with libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm) it says:
"Bundled libraries: These provide resources only to a single enterprise application, and are packed inside the application's EAR file."
=>As I want to provide the lib only to my enterprise application, I will probably have to create a bundled library, right? Does this also work if netweaver CE 7.1 uses a different version of the same library?
5. Do I need Netweaver Developer Studio for creating "bundled" libraries?
Or can I copy the binaries in the WEB-INFlib-folder of my application, deploy it and use it?
6. Is configuration of application-j2ee-engine.xml the right place to reference a third-party-library in a specific version which exists in WEB-INF/lib-folder in my application even if it exists also in another version on netweaver?
=> In the document "Troubleshooting: Finding Missing Parent-Child Relations" it says: "To implement the chain of parent-child relations in the deployment descriptor of the component, use either application-j2ee-engine.xml (for applications) or provider.xml (for libraries and services)."
=> "Creating standard libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f447a8d62b0484e10000000a155369/frameset.htm9 tells me, that I have to configure the file application-j2ee-engine.xml, too.
=> But in "Working with libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm) it says:
"Standard libraries: These provide resources to all enterprise applications deployed on the server. They are packed in EAR files like the enterprise applications."
=> Does this mean, that I have to force Netweaver CE 7.1 to use a higher version of a certain third-party-library? Does this even work? Do all applications deployed on Netweaver 7.1 have to use this library in the higher version?
It is really confusing to read through the documentation!!! Sorry for that avalanche of questions, but I really hope it will make the issue of using libraries (especially if they exist in different versions on the CE 7.1) a little clearer!
Best regards
Bettina

Hi Bettina,
I'll try to answer your questions:
>
> Hi
>
> After some research on the use of different versions of third-party-libraries in SAP netweaver CE 7.1, I am actually quite confused and would be happy if someone could shed a light on that subject....
>
> 1. Is there a way to tell netweaver CE 7.1 to use a library in my WEB-INFlib-folder by simple configuration?
>
> E.g. we would like to use a third-party-lib in a newer version than the one which is loaded by CE 7.1. Many application server provide a simple configuration option (e.g inside META-INFapplication.xml) where the web as can be forced to use the library inside WEB-INFlib for this application.
>
First of all, the appropriate docs are here: [http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm|http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm].
Basically what you do is define a lib project in the studio and deploy it do the server. This may be less comfortable then just configuring manually, therefore it work better in larger environments because the server checks that libs are available in all running instances - which it could not do if you manipulate diretories manually  (an approach you should never attempt in any SAP envrionment)
> 2.Is the concept of "heavy loading" described in a blog by Georgi Danov(Using Hibernate in SAP NetWeaver Composition Environment) the answer to question 1.?
>
> Does it also work for other third-party-libraries than hibernate? Does it work at all?
>
If Georgi describes it, I hope so, as he is one of our developers who knows best.
> 3. In the blog mentioned in question 2, Mr. Danov is talking about "shared libraries". Does this mean, that I have to forget everything about "bundled" and "standard" libraries explained in help.sap.com/CE, if I want to create a heavy loader?
>
"shared" are all of theses libs, as otherwise they would be specific to an application.
> He is referencing another blog (Applications and shared libraries) which is two years old? Can I still apply the information there to CE?
>
This was about anearly version of CE and even Georgi updated the blog this year to talk about slight differences. So yes, this still applies.
> 4. Are "Bundled libraries" applicable when using different versions of third-party-libraries in CE 7.1?
>
> In "Working with libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm) it says:
>
> "Bundled libraries: These provide resources only to a single enterprise application, and are packed inside the application's EAR file."
>
> =>As I want to provide the lib only to my enterprise application, I will probably have to create a bundled library, right? Does this also work if netweaver CE 7.1 uses a different version of the same library?
>
That depends... Your application uses it's own classloader which means it should only use your libs in case there is another version available on the server. But if you're trying to deploy a lib that is used by a service of the server (int that case loaded by the server not your classloader!) I'm not so sure.
> 5. Do I need Netweaver Developer Studio for creating "bundled" libraries?
>
> Or can I copy the binaries in the WEB-INFlib-folder of my application, deploy it and use it?
>
You need the Studio. No way around that. [Edit:] Sorry, misunderstood you here: I thought you want to copy something into the deployed directory on the server! - Of course, any deployment method would do it and though copying binaries seems to be valid. However,  I'm checking this currently with development in detail.
> 6. Is configuration of application-j2ee-engine.xml the right place to reference a third-party-library in a specific version which exists in WEB-INF/lib-folder in my application even if it exists also in another version on netweaver?
>
> => In the document "Troubleshooting: Finding Missing Parent-Child Relations" it says: "To implement the chain of parent-child relations in the deployment descriptor of the component, use either application-j2ee-engine.xml (for applications) or provider.xml (for libraries and services)."
>
> => "Creating standard libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f447a8d62b0484e10000000a155369/frameset.htm9 tells me, that I have to configure the file application-j2ee-engine.xml, too.
>
> => But in "Working with libraries" (http://help.sap.com/saphelp_nwce10/helpdata/en/44/f4e00e56ec0486e10000000a155369/frameset.htm) it says:
>
> "Standard libraries: These provide resources to all enterprise applications deployed on the server. They are packed in EAR files like the enterprise applications."
>
> => Does this mean, that I have to force Netweaver CE 7.1 to use a higher version of a certain third-party-library? Does this even work? Do all applications deployed on Netweaver 7.1 have to use this library in the higher version?
>
>
>
> It is really confusing to read through the documentation!!! Sorry for that avalanche of questions, but I really hope it will make the issue of using libraries (especially if they exist in different versions on the CE 7.1) a little clearer!
>
> Best regards
> Bettina
Could you tell me what you're trying to deploy? I'll try to get Georgi on this....
Regards,
Benny
Edited by: Benny Schaich-Lebek on Nov 5, 2008 1:40 PM

Similar Messages

  • About Third-party libraries..

    Hello,
    1) Is there any tutorial that shows how to use third-party jar files in our projects, step by step? I tried :
    *Tools/Manage Libraries, then created new in "User" directory, Selected my jar files in class path then used Tools/Project Properties/Libraries/Add Library and selected the one that i added in previous step.
    However when i type
    import packagename.* it marks it as GRAY and does not do anything.. ?
    2) If i add, does it encrypt and compress my third-party jar file in my Main jar file? Or do i need to make it read from external directory by my code?
    If it does not ecrypt, how can i avoid people using the library that i used in my project when i give them my software?
    Thanks..

    hi GlenX
    Could it be that your JAR file you refer to in (1) contains your "library JAR" as a JAR file?
    It looks like using a "Library File Group" in a "JAR Deployment Profile" includes the "library JARs" as JAR file in the new JAR file created by the profile. It is possible to add the contents of "library JARs" using a "Dependency Analysis File Group" in a "JAR Deployment Profile".
    see http://verveja.footsteps.be/~verveja/files/oracle/JarStuffThread615655-v0.01.zip
    In JarStuffThread615655-v0.01.zip I have included two applications, "Thread615655MyToolApp" and "Thread615655MyClientApp" with in each one project (to avoid confusion about project dependencies).
    The MyClient.jpr project has a "MyTool project library" configured, referring to "MyTool.jar".
    So, you could try this scenario ...
    (1) open Thread615655MyToolApp.jws in JDeveloper
    (2) select "Deploy to JAR file" on MyToolDeploymentProfile.deploy
    (3) open Thread615655MyClientApp.jws in JDeveloper
    (4) select "Deploy to JAR file" on MyClientDeploymentProfile.deploy
    (5) double-click the "MyClient\deploy\MyClient.jar", and see the "vSomeMyToolValue = some MyTool value" shown on the panel in the frame.
    regards
    Jan Vervecken

  • Third-party libraries in a JSC team project

    We're using Sun Java Studio Creator 2 Update 1 (JSC) for the project I'm working on. This project uses a few third-party libraries (jar files). Up until 2 weeks ago I was the lone member of the project team and all was fine. Then we added another team member and encountered an issue with the 3rd-party jars. In particular, since I had setup the 3rd-party libraries using the "Library Manager" facility, I had no problems with building and deploying the app, but when my team member got the code from the version control system, he could not compile due to an error saying something like "library not found". I'm looking for a way to setup the 3rd-party libraries for our project such that those jars are found during compilation (and included in the WAR file) while at the same time new developers do not have to use the "Library Manager" to configure all the libraries on their JSC install. I tried adding the jars to the project's "lib" directory, but that did not work unless I explicitly listed them in the compile path (using "Project Properties") and this used a hard-coded path to the jars. I would rather not require that every project team member use the exact same disk path to our project so I do not like this approach either.
    Any suggestions?

    As a best-practice for creating projects for version control, the jar files should be added as jars and not in a library unless the library points to jars that are at a common location on the network. You can add a directory to your project from the "files" tab called something like "projectlibs". Then add the 3rd party jar files here. When you add the jar to the project, make sure you check the "package" column which tells Creator to package the jar with the deployment.
    Cheers!
    -David

  • Third party libraries for hibernate(jar files)

    Hi I am new in hibernate.I follow some steps of hibernate tutorial from
    http://www.hibernate.org/hib_docs/v3/reference/en/html/tutorial.html
    In chapter-1 1.2.3. Hibernate configuration when i try
    java -classpath ../lib/hsqldb.jar org.hsqldb.Server
    database should be started but it,s not
    most probably reason is also include third party libraries
    I try all but still not getting success.
    In command prompt I get ::
    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.
    C:\Documents and Settings\shobhitsingh>cd\
    C:\>cd hibernatet*
    C:\hibernateTutorial>java -classpath ../lib/hsqldb.jar org.hsqldb.Server
    Exception in thread "main" java.lang.NoClassDefFoundError: org/hsqldb/Server
    C:\hibernateTutorial>pl guide
    Regards
    -S.Singh

    I'm sorry.I used classpath in wrong manner.I got where I'm wrong.
    Regards
    -S.Singh

  • Login module access to third-party libraries?

    G'day,
    I have a simple login module that is currently deployed in Netweaver 2004s. It is callable by both Netweaver AS and Netweaver Portal, and was implemented using Netweaver Developer Studio.
    I would like to have this login module use third-party libraries, but I am not sure of the best approach to take here.
    Do I just drop the third-party libraries into the jre/lib/endorsed directory of the JDK, or is there a better way of putting the third-party libraries onto the classpath?
    When I edit the server/provider.xml file of the login module library in Developer Studio, it only allows me to make references to jar files that currently exist in the workspace. So adding references to external jar files does not seem to be supported here.
    Is there a proper place to drop third-party jar files, so that they can be used by my login module?
    --Geoff

    Hi,
       There are different ways. as you said You can either drop it in jre/lib folder or a clsspath setting will do.
    But some times the server will not be able to catch up those libs so You can set the path to these libs in config tool. This will ensure the server will take these libs for sure.
    If you have set the classpath NWDS will take this reference

  • Adding menu entry to "About Third Party Plug-Ins..."

    I am trying to find the language-independent identifier for the "About Third Party Plug-Ins..." menu in the Help menu but I can't seem to find it. Can someone help me find the identifier so that I can add my plug-in's about menu item entry to it? Here is the code that I am currently using, and I understand that I would need to modify it slightly to add it to the submenu:
    AVMenu HelpMenu = NULL;AVMenuItem AboutItem = NULL;
    AVMenubar TheMenubar = AVAppGetMenubar ();
    ExecProcPtr = ASCallbackCreateProto (AVExecuteProc, &ExecProc);
    CompEnabledProcPtr = ASCallbackCreateProto (AVComputeEnabledProc,
         &ComputeEnabledProc);
    CompMarkedProcPtr = ASCallbackCreateProto (AVComputeMarkedProc,
         &ComputeMarkedProc);
    HelpMenu = AVMenubarAcquireMenuByName (TheMenubar, "Help");
    if (HelpMenu) {
         AboutItem = AVMenuItemNew ("About S4i Express Annotate Plugin", "ABDE:S4IXPAPExpressAnnotate", NULL,
         false, NO_SHORTCUT, 0, NULL, gExtensionID);     if (AboutItem == NULL) {
         AVAlertNote ("Unable to create Express Menu Item, not loading.");
         return false;     }     AVMenuItemSetExecuteProc (AboutItem, ExecProcPtr, NULL);     AVMenuItemSetComputeEnabledProc (AboutItem,          CompEnabledProcPtr,NULL);
         AVMenuItemSetComputeMarkedProc (AboutItem,
              CompMarkedProcPtr,NULL);
         AVMenuAddMenuItem (HelpMenu, AboutItem, 1);     AVMenuRelease (HelpMenu);}
    Thank you for all your help!

    Use the Plugin Wizard to create it for you...
    However, I see a MAJOR PROBLEM with the code that you posted.
    You are using Adobe's developer extension ("ABDE:S4IXPAPExpressAnnotate") and NOT your own.  You need to register your own extension and use that for your plugin(s).

  • No of classes, Methods, Lines of codes, DLL's used and Third Party Libraries details identifying tools

    We have started a project to migrate 100+ Web Applications developed using legacy Microsoft technologies to latest .Net 4.5 Framework.
    The following are the planned migration approach
    Classic Asp à                                                   
    Asp.Net 1.1 Framework à Asp.Net 4.5 Framework
    Asp.Net 2.0, 3.5, 4.0 Framework à         Asp.Net 4.5 Framework (Direct Migration)
    Asp.Net 2.0, 3.5, 4.0 Framework à         Asp.Net 4.5 Framework (Application Rewrite
    using MVC/Entity Framework)
    VB 6 (COM/DCOM) à                                  
    C# .Net 4.5 (Web Services)
    We have to analyze 100+ applications to categorize them as Simple/Medium/Complex conversions for planning the timeline for completing the migration activities.
    Analysis includes identifying the following details - No of classes, Methods, Lines of codes, DLL’s used and Third Party Libraries  details
    for 100+ Microsoft applications.
    Could you please let me know do we have any effective tool to identify above mentioned details?

    This forum is for Microsoft Project Server, an EPM tool. You will need to find a more suitable forum for your question.
    Good Luck with the conversion!
    Rod Gill
    Author of the one and only Project VBA Book
    www.project-systems.co.nz

  • Using third party libraries

    Hi,
    I have an oc4j application which refers to certain third party libraries ( jar files).
    Which xml files should I be making an entry in, for the application to refer to these jar files?
    Regards,
    Rishikesh R.

    The <library-directory> element of the application.xml file specifies either a relative or absolute path or URL to a directory or a JAR or ZIP archive to add as a library path for this OC4J instance. Directories are scanned for archives to include at OC4J startup.
    -Frances

  • Two libraries needing different versions of a common library

    I am currently writing an application that utilizes two libraries that depend on a third common library. However, each of the two libraries requires a different version of the third library. Is there any way this can be done?
    I have done some research into writing custom class loaders but I haven't been able to find anything useful in this instance. Any help would be appreciated. Thanks.

    It's not just a feature missing that's the problem.
    If I use one version of the library, one part of the
    program simply doesn't work. If I use the other,
    then the other part of the program refuses to work.The problem you should be trying to solve is why the two libraries won't work with the same (latest) version of the shared library. It indicates that one of them is relying on buggy behavior, and should be fixed.
    Do you have any access to the libraries' source code? You'd be far better off trying to figure out what changed, and how to fix the piece that relied on its old behavior, rather than any sort of hack (and changing package structure to work around a bug is definitely a hack, perhaps moreso than using a custom classloader).
    Finally, what does "doesn't work" mean? Are you unable to compile? Are you able to compile but get incorrect results? Does the program crash?

  • Doubt about third party process

    Hello SD Consultants.
    Recently i joined in a company...so here we implement third party process.. My colleague has implemented third party process.
    here he has done...va01...me21n...migo...miro and vfo1......but when i take coaching they dint say about migo in third party...so
    friends please help me..what is the relevance of migo here...we are not receiving any goods from  vendor...so whats the use...
    Thanking you

    Dear K. Ram
    MIGO - goods recipt, MIRO - invoice verification.
    Third party process sales order > PR > P.O  > MIRO > Invoice (delivery done by vendor to customer)
    Individual purchase order (IPO)   sales order > PR > P.O  > MIGO >  MIRO > Invoice (delivery done by vendor to company n then to customer).
    You are right concept wise. Ask ur friend or team leader and try to have a discussion on business process.
    Also check the Item category group  is BANS (Material master), Item category  TAS (Sales order)  for third party .
    If it is showing BANC, TAB. It is IPO as mentioned above and u have been disguised with business process explanation from your friend/ seniors or they din't understand the process.
    You can discuss n debate , also raise a point of reducing the master data by eliminating migo transaction in third party.
    This is what been taught to us too.
    Regards
    Pavan Kumar

  • Discussions about third party tools

    Do we have any forum where queries related to third party tools for SAP like SecurInfo can be put up ??

    Hi,
    What about the Software Integration and Certification forum?
    Eddy

  • About Third Party Sale

    Dear Gurus,
    Kindly help me with configure the below process.
    Unlike a third pary item ,which is delivered to the customer directly by the vendor, I want to add a material in the sales order which is procured and placed in stock, schedule lines allowed and then delivered along with other items. Which settings would make this material behave differently from a third party item.
    Also, could you please tell me the difference between TAS and TAB Item categories?
    Many Thanks
    Kumar

    Hi
    Your process is called individual purchse order
    You will receive an order from customer
    Up on saving the sales order PR will get generated
    Based on that PR you will rise a PO to vendor and
    You will receive the stocks in your plant and will do MIGO and keep them as sales order stocks
    Then you will generate delivery to the customer and do PGI billing etc
    Settings reqd
    1.Item category group as BANC
    2.Item category determined will be TAB or should be TAB
    TAB is marked with special stock indicator as E in standards (that is reqd)
    TAB is delivery related billing A for billing relevance
    3.Schedule line category should be CB
    4.In VOV6 for Schedule line category should be CB
    In VOV6 details Order type should be NB
    Item cartegory in purchase should be 0 in purchase
    Account assignment catgory should be M
    If you ensure these settings then your process will go smooth
    In background for the Schedule line category CB the requirement type determined will be KEB and
    the requirement type KEB  will be linked to Requirement class KEB
    If anyone of the keys told in bold is not maintained or wrongly maintained the you will have problems in MIGO
    From FI side it goes to  consumption account  not to inventory account as this is picked from the Requrement class in OVZG
    Regards
    Raja

  • Integrate third party libraries with JBuilder 2005

    Hi,
    Does any body know how to integrate any third party APIs with JBuilder 2005. It would be of great help if anybody of you could jot down the steps to integrate third party APIs with JBuilder.I've got to use the JDIC API(https://jdic.dev.java.net) and the PDFBox APIs(www.pdfbox.org) with in JBuilder.
    Thanks & Regards,
    DT

    Yep got it. Shoud have refered the docs before asking this question. I used the following menu item to add a third party .jar file
    Project->Project Properties: select the Paths option and add the required jar file by selecting the "Required Libraries" tab.
    Regards,
    DT

  • Can client dynamically link to shared libraries for different versions ?

    Can Oracle client dynamically link to Oracle shared libraries if the versions are different ?
    Hi:
    I apologize for this newbie question:
    We are using PRO C to generate the client C code.
    We can compile both dynamic and static versions of our Oracle client.
    Our question is:
    is it possible to compile a dynamically linked Oracle client in say version 10.1.0.2 and actually run the application against say version 8.1.7.0 environment ?
    That is, can an Oracle client dynamically link to the Oracle shared libraries if the versions are different ?
    If it is possible, then how to modify the makefile
    to enable Oracle client to reference different versions
    of shared libraries ?
    Thanks
    JL

    What you describe is not supported.

  • Using old third party libraries

    I am trying to compile several programs and the programs need to use old libraries that I cannot re-compile because they belong to a third party vendor. Is there any way to get symbols resolved using older libraries that were probably built using Sun's 4.0 compiler ?

    For full details, read the C++ MIgration Guide that comes with the compiler, and which is also available at docs.sun.com.
    If the libraries were built using Sun C++ 4.2, you can build new code using the -compat=4 option and it will be binary compatible with the libraries. You will be restricted to ARM (1990) style C++, and will not be able to use modern C++ features in your new code.
    If the libraries were built using Sun C++ 4.0 or 4.1, you might have some compatibility problems.
    You should get the vendor to re-build the libraries using a recent Sun C++ compiler, or find replacements for the libraries. You can't rely on old-style C++ forever.

Maybe you are looking for

  • Format of lcr?

    what is the format of LCRs captured at the quetable at the source?is it in xml lcr format?if it is not,can i convert in into xml lcr?so that i can make JMS to read the queue contents

  • How to insert data from file to table??

    I need to know that how can i insert data in multiple column through file. I can simply insert data in one column table but couldnt find out the way to put data in all column. My data store in a file ************************************************te

  • Menu Bar in IE 7

    I've recently updated our system's webpage and got an email yesterday after the relaunch over two weeks ago, that they cannot use the menu bar in IE7? Any ideas why it works with all other browsers but not IE7? http://www.chestercountyschools.org

  • Socket Problem, Problem about printing the response from server

    Or even I am not sure if there is a response from server. My code is like that                //Connection between, httpProxy and target adress                Socket clientSocket= new Socket("some host", 80);                DataOutputStream outToServ

  • Why can't I access my icloud on my phone?

    I'm trying to get into my icloud but every time I click on my mail button I then click on icloud put in my username and password it says that my Apple ID has already been added to my phone but I can't access icloud anywhere on my phone. Do I need to