Problem in synching multiple web applications

I have a domain called myDomain. In this domain I have 2 enterprise applications
say
ent1App with ent1App-project and ent2App with its ent2App-project. Each enterpsrise
application has one web application
(webApp1 and webApp2 respectively). I have the same set of webflow files (.wf
files) in both
ent1App-project/application-sync/web-apps/webApp1 and ent2App-project/application-sync/web-apps/webApp2
directories.
Now suppose I synchronize my webflows (using EBCC) for say ent1App. The synchronization
is accomplished without any problems
and this is confirmed when the entries get updated in the Master Data Repository
where all the webflows for ent1App get
stored. This is as viewd using the datasyncservlet.
If I now do a synchronization on the other enterprise application called ent2App,
the synchronization takes place
successfully but when viewed in the datasyncservlet, it shows up the entries for
the webflows of ent2App. i.e. the entries
for all the weblows of ent1App which were shown in the Master Data repository
are not shown.
We looked up the Cloudscape database to ensure that the entries for both the enterprise
applications are present and it does
contain the records for both the applications. This however does not show up in
the datasync servlet. Due to this we get a
namespace not found error whenever we try to access the application whose entries
are missing in the master data repository.
I have separate names for my datasync folder for each of the applications in my
config.xml as shown below
ent1App
<Application Deployed="true" Name="ent1App"
Path=".\config\myDomain\applications\ent1App" StagedTargets="iden_staging">
     <WebAppComponent DeploymentOrder="1002" Name="datasync" Targets="iden_staging"
URI="datasync"/>
ent2App
<Application Deployed="true" Name="ent2App"
Path=".\config\myDomain\applications\ent2App" StagedTargets="iden_staging">
<WebAppComponent DeploymentOrder="1002" Name="datasyncDev"
Targets="iden_staging" URI="datasyncDev"/>
I am using WLS6.1 SP4 and WLP 4.0 SP3
Can someone please tell me what could be the problem?
Thanks
Shah Jimmy

When you peform a data sync you are updating the data_sync_item table
with the EBCC xml files. For those files that are not present in the
EBCC project they will be deleted from the table.
You can not use multiple enterprise applications that contain Portals.
Try using using multiple domains that contain separate databases for
datasyncs.
Here is a snippet I recently sent out in a support case:
Unfortunately there is not a documented best practice for maintaining
multiple projects and enterprise applications. In my opinion if you
plan to create multiple enterprise applications they will need to
maintain separate application components and web applications. The
enterprise applications will need to use the same portal resources
(pools) and therefore same tables. The synchronization modes documented
at http://e-docs.bea.com/wlp/docs40/deploygd/appdata.htm explain the
limitations in data sync -- either all files are deleted and updated or
only modified files are updated. Either mode will delete files from the
data_sync_item table that do not exist in the current project.
Therefore one project will need to be used per domain.
-- Jim
Jimmy Shah wrote:
I have a domain called myDomain. In this domain I have 2 enterprise applications
say
ent1App with ent1App-project and ent2App with its ent2App-project. Each enterpsrise
application has one web application
(webApp1 and webApp2 respectively). I have the same set of webflow files (.wf
files) in both
ent1App-project/application-sync/web-apps/webApp1 and ent2App-project/application-sync/web-apps/webApp2
directories.
Now suppose I synchronize my webflows (using EBCC) for say ent1App. The synchronization
is accomplished without any problems
and this is confirmed when the entries get updated in the Master Data Repository
where all the webflows for ent1App get
stored. This is as viewd using the datasyncservlet.
If I now do a synchronization on the other enterprise application called ent2App,
the synchronization takes place
successfully but when viewed in the datasyncservlet, it shows up the entries for
the webflows of ent2App. i.e. the entries
for all the weblows of ent1App which were shown in the Master Data repository
are not shown.
We looked up the Cloudscape database to ensure that the entries for both the enterprise
applications are present and it does
contain the records for both the applications. This however does not show up in
the datasync servlet. Due to this we get a
namespace not found error whenever we try to access the application whose entries
are missing in the master data repository.
I have separate names for my datasync folder for each of the applications in my
config.xml as shown below
ent1App
<Application Deployed="true" Name="ent1App"
Path=".\config\myDomain\applications\ent1App" StagedTargets="iden_staging">
     <WebAppComponent DeploymentOrder="1002" Name="datasync" Targets="iden_staging"
URI="datasync"/>
ent2App
<Application Deployed="true" Name="ent2App"
Path=".\config\myDomain\applications\ent2App" StagedTargets="iden_staging">
<WebAppComponent DeploymentOrder="1002" Name="datasyncDev"
Targets="iden_staging" URI="datasyncDev"/>
I am using WLS6.1 SP4 and WLP 4.0 SP3
Can someone please tell me what could be the problem?
Thanks
Shah Jimmy

Similar Messages

  • Multiple Web Applications WLS 7.0

    Hi,
    I am trying to configure multiple web applications on the same WL 7.0 server and
    am having trouble doing the following.
    I would like to be able to use the following URLS:
    Application #1:
    http://myserver/st/aems - where st/aems maps to the path X:\SimpleTrade2\AEMS\ui\source\htdocs
    Application #2:
    http://myserver/st/acms - where st/aems maps to the path X:\SimpleTrade2\ACMS\ui\source\htdocs
    Root - Default web application - This would be left empty with the idea that our
    company could sell our web applications and we would deploy them on someone elses
    WLS and we would not conflict in any way.
    The problem with the above is that when I look at the DTD and try and configure
    config.xml in the following way:
    <Application Deployed="true" Name="AEMS"
    Path="X:\SimpleTrade2\AEMS\ui\source\htdocs" TwoPhase="true">
    <WebAppComponent DeploymentOrder="2000" Name="aems"
    Targets="simpletradeserver" URI="st/aems"/>
    WLS blows up on startup because it tries to POST-Pend the URI to the path... If
    I change it to:
    <Application Deployed="true" Name="AEMS"
    Path="X:\SimpleTrade2\AEMS\ui\source" TwoPhase="true">
    <WebAppComponent DeploymentOrder="2000" Name="aems"
    Targets="simpletradeserver" URI="htdocs"/>
    This will work but then my URL is not what I want it becomes http://myserver/htdocs
    Is there anyway around this or a way to get what I want?
    Another piece of information, I am developing in Exploded directory format when
    we deploy it will be as an ear.
    Thanks in advance for any ideas!!!
    -Jerry Rodgers

    Thanks for the info Christian.
    I thought I would pass along a bit more inforation for others who might be trying
    to do something similar. In case they run across this message.
    I did determine that if you are using a .WAR file the name attribute of the xml
    node WebAppComponent will allow you to create a different context path than the
    URI. I did not test to see if it allowed you to use a name like "st/aems" I am
    sure "st.aems" would work or any name that may be different than the URI. The
    weird thinhg is that when using the EXPLODED DIRECTORY format the URI is the name
    of the folder under the path and the name property appears to be ignored no matter
    what you change it to you can only get to your web app using the URI.
    Hope this helps someone who comes after me and is looking for the same thing,
    maybe they won't spend 6 hours on it like I did ;>
    -Jerry
    "Christian Plenagl" <[email protected]> wrote:
    >
    Hi,
    this is not possible.
    The URI field contains the directory name of the WebApplication, which
    normally
    is the same name as the directory where you put the webapplication in.
    Christian Plenagl
    Developer Relations Engineer
    BEA Support
    "Jerry Rodgers" <[email protected]> wrote:
    Hi,
    I am trying to configure multiple web applications on the same WL 7.0
    server and
    am having trouble doing the following.
    I would like to be able to use the following URLS:
    Application #1:
    http://myserver/st/aems - where st/aems maps to the path X:\SimpleTrade2\AEMS\ui\source\htdocs
    Application #2:
    http://myserver/st/acms - where st/aems maps to the path X:\SimpleTrade2\ACMS\ui\source\htdocs
    Root - Default web application - This would be left empty with the idea
    that our
    company could sell our web applications and we would deploy them onsomeone
    elses
    WLS and we would not conflict in any way.
    The problem with the above is that when I look at the DTD and try and
    configure
    config.xml in the following way:
    <Application Deployed="true" Name="AEMS"
    Path="X:\SimpleTrade2\AEMS\ui\source\htdocs" TwoPhase="true">
    <WebAppComponent DeploymentOrder="2000" Name="aems"
    Targets="simpletradeserver" URI="st/aems"/>
    WLS blows up on startup because it tries to POST-Pend the URI to the
    path... If
    I change it to:
    <Application Deployed="true" Name="AEMS"
    Path="X:\SimpleTrade2\AEMS\ui\source" TwoPhase="true">
    <WebAppComponent DeploymentOrder="2000" Name="aems"
    Targets="simpletradeserver" URI="htdocs"/>
    This will work but then my URL is not what I want it becomes http://myserver/htdocs
    Is there anyway around this or a way to get what I want?
    Another piece of information, I am developing in Exploded directoryformat
    when
    we deploy it will be as an ear.
    Thanks in advance for any ideas!!!
    -Jerry Rodgers

  • Authentication Across Multiple Web Applications (Revisited)

              Its been an ongoing battle, but I've made some insight into this situation. The problem stands as it seems impossible to authenticate against one web application deployed as a WAR archive and have that authentication carry across to another web application with the same security constraints. I've been told by BEA that, quote:
              "It seems to me that we are violating section 11.6 of the servlet 2.2 spec which talks about webapps"
              I've also been told that this is fixed in WLS 6.0, reference issue #38732.
              For those of us building production environments using 5.1 instead of 6.0 XML based configuration, this does NOT solve our problem.
              I've dug further into the bowels of 5.1 and found that if you manually set the realm name in the login-config of the security constraint in the web.xml file in each WAR deployment as such:
                   <login-config>
                        <auth-method> [whichever method] </auth-method>
                        <realm-name>WebLogic Server</realm-name>
                   </login-config>
              Authentication will carry across web applications. However, I've noted that the session management then becomes unpredictable. For example:
              I log into the application TESTAPP1 which contains a protected servlet that outputs the session ID and attempts to get the authenticated principal name from the "_wl_authuser_" session variable. Upon first load of the page (after the login dialog box), the session is null [can be fixed with .getSession(true) call instead] and the "_wl_authuser_" object does not exist. Reload the page and the session appears as well as the "_wl_authuser_" object. Strange.
              I then move to TESTAPP2, which does not prompt me for authentication but also is missing the session in the same manner. Upon browser reload, the session is created with a different ID and the "_wl_authuser_" object is now available with the appropriate principal name.
              Upon moving back to TESTAPP1, I am not prompted for authentication however, I am assigned yet another session ID after browser reload, different from the first.
              So it seems that although authentication is carried across web applications, the session IDs as you move from TESTAPP1 to TESTAPP2 change, and then change again but not back to the original when going back to TESTAPP1.
              This is a particular problem since we are using Vignette's V5 as our main client and tracking sessions through V5 - this would quickly become unmanageable if a single page view access three or four different application components with three or four different session ids.
              I'm wondering if we can expect the same behavior from WLS 6.0?
              Ideally, I'd like to see WebLogic use a single session ID to track users across multiple web applications but still have session independence between applications. So if I store something in session in TESTAPP1, its not available in TESTAPP2. Does this outline the behaviour in WLS 6.0? Can anyone verify this?
              Some food for thought. Thanks!
              ./Chris
              Senior Systems Anaylst
              MassMutual Financial Group
              

    Hello! I am searching an answer to this question too!!!
    Did you get some news regarding this item?
    Regards,
    C.M.

  • Pros & Cons of having multiple web applications under one EAR project

    Could anybody let me know what are the advantages and disadvantages of having multiple web applications under one single EAR project?

    Either this is homework, in which case, do it yourself, or you already think you have some pros for doing this. Share with us

  • Problem with ClassCastException in web application

    Hello,
              I'm trying to deploy a web application in WLS 5.1 and I'm getting the
              "dreaded" ClassCastException every time when JSP tries to read a bean
              from the request or session. Under my architecture (actually it's just
              the regular "model 2" ) bean is populated by a servlet, set on the
              request and then retrieved by JSP (servlet forwards to JSP). Everything
              work fine when I register servlets in weblogic.properties, but
              ClassCastException is thrown on any attempt to read from the request if
              the same JSPs and servlets are deployed as web application.
              Has anybody come across the same problem?
              Thanks in advance for help.
              Alexander
              

    Hello,
              This is all well and good as a temporary bug, but it's totally unrealistic for
              the future. Two points:
              * The ClassLoader doesn't need to be discarded, it just needs to be cleared.
              * Other servlet engines seem to be able to handle this.
              Hope it's on its way to resolution!
              TDoan wrote:
              > Alexander:
              >
              > I had some problem with ClassCastException, and recently I found out what it
              > was that causing it. I'm sure if this is the same problem you are having,
              > but please read the following paragraph.
              >
              > I cutted this from http://www.weblogic.com/docs51/classdocs/API_servlet.html
              > ClassCastException and HTTP Sessions
              >
              > You might encounter a ClassCastException while developing servlets that use
              > HTTP sessions. This could happen as a result of the following set of events:
              >
              > a.. You store a reference to a custom class, myFoo, in an HTTP session.
              >
              > b.. While in mid-session, you change your servlet (or JSP or JHTML),
              > causing it to be reloaded. In fact, it is necessary for it to be reloaded by
              > a completely new class loader, and the old class loader that had previously
              > loaded it must be discarded.
              >
              > c.. Because your custom class myFoo is also located under the servlet
              > classpath, it too is reloaded by the new class loader.
              >
              > d.. Now, when you retrieve myFoo from the HTTP session, you cast it to the
              > expected type, but you recieve a ClassCastException. The exception is thrown
              > even if class myFoo has not changed. Because it has been loaded by a
              > different class loader, it is regarded by the JVM as incompatible.
              > Note: If you are using session persistence, the class contents must be
              > serialized, and you will not encounter this exception.
              >
              > Here are some suggested work-arounds to this problem:
              >
              > a.. Do not place your class myFoo in the servlet classpath. Instead, place
              > it in the system classpath or the weblogic.class.path, which are accessible
              > by WebLogic Server. The class will not be reloaded when the servlet is
              > modified. This drawback to this solution is that you cannot prototype the
              > myFoo class, because you must restart the server in order to reload the
              > class after it is modified.
              >
              > b.. If you need to prototype the class, you can write a wrapper method
              > within it to store and retrieve its contents to and from the session. You do
              > not access the class directly from the session, but instead call it is
              > wrapper methods to store or populate it is contents from the session. As
              > long as you use standard Java class types to store the class contents, they
              > will not be reloaded when the servlet is reloaded. This approach has
              > performance drawbacks because your wrapper methods would need to set or get
              > multiple name=value pairs for each class's attributes.
              >
              > c.. Another work-around is to catch the ClassCastException, and replace
              > the old class that is stored in the session with a newly instantiated class,
              > or remove it from the session. Unfortunately, you lose the session data that
              > was previously stored in the class, so you must write your application to
              > handle this scenario. This is the easiest solution to the problem-remember
              > that you should not be storing critical information in an HTTP session, but
              > rather storing it in a database.
              > Note: The ClassCastException generally occurs while you are developing
              > your servlets, and should not be an issue in a stable production system. If
              > you are upgrading your system online, you might wish to warn your customer
              > base.
              >
              > Hope it helps,
              > Tin
              >
              > "Alexander Ananiev" <[email protected]> wrote in message
              > news:[email protected]...
              > > Hello,
              > >
              > > I'm trying to deploy a web application in WLS 5.1 and I'm getting the
              > > "dreaded" ClassCastException every time when JSP tries to read a bean
              > > from the request or session. Under my architecture (actually it's just
              > > the regular "model 2" ) bean is populated by a servlet, set on the
              > > request and then retrieved by JSP (servlet forwards to JSP). Everything
              > > work fine when I register servlets in weblogic.properties, but
              > > ClassCastException is thrown on any attempt to read from the request if
              > > the same JSPs and servlets are deployed as web application.
              > > Has anybody come across the same problem?
              > >
              > > Thanks in advance for help.
              > > Alexander
              > >
              

  • One Search service application for multiple web applications in a single server

      We are planning to host 17 Web applications in a single Server. Do I need to create search service application for each web application or I need to create one  Search service application , create a Content source for each web
    application and create a Result source for filtering. Which is the best approach. And which approach takes more RAM memory.
       In my application I am using Search web part, "Recently Changed Items", "Popular Items" web parts. when I created only one one  Search Service application for all web applications and using Result sources ,
    I am not getting the results. What could be the problem.

    Hi,
    One SSA is ok, but you should think about access rights. If the access is clear cut between all the web apps you should be ok with one SSA. Multiple result sources limiting on content source also works, but could easily be bypassed.
    Multiple SSA's will eat up RAM/CPU like a mother :)
    As for popular etc.. it could be due to how those sources are set up, but haven't investigated or tested this much.
    Thanks,
    Mikael
    Search Enthusiast - SharePoint MVP/MCT/MCPD - If you find an answer useful, please up-vote it.
    http://techmikael.blogspot.com/
    Author of Working with FAST Search Server 2010 for SharePoint

  • Problems access to a web application (Web Interface or Web report)

    Hi,
    We found problems with the access to web application. Some users have problems with direct links to the web applications(Web Interface or Web reporting), when they click on the link an error message appears, the message displays the following text:
    "Cannot open file Bex?sap-language=ENbsplanguge=ENcmd=idoc_TE.."
    Clicking in details the message is "No Access to specified file"
    For this users the access to excel reporting is correct, the message appears when they click on the direct web links through the browser or directly in BW system, but if they type the URL they can access. Other users can use the direct web link without problems.
    I highly appreciate any help or idea about how to solve this issue.
    Thanks in advance.

    HI,
    please ask to your basis that check the language of every single user on su01 tx.
    This is the problem i think.
    Natalia.

  • A web developer problem while running a web application

    Hi all,
    I'm novice to J2EE.
    I've encountered a problem while accessing the deployed module in weblogic 8.1 server.
    I'm sure that the webapplication module is deployed as i saw my module in administration console & also the status said that it is deployed.
    when i access my web application by specifying the proper server and port no and context root it is showing
    either 505 - resource not found error(http://localhost:7001/Suresh-2/Suresh) or 404 - not found error.( http://localhost:7001/Suresh-2/Suresh)
    Now let me elaborate what i've done till now.
    My webapplication folder structure is : C:\bea\user_projects\domains\mydomain\applications\Suresh\WEB-INF\classes\Sai\ServExamp.class
    My servlet is ServExamp.java
    I created a folder called "Suresh". In that folder created another folder called "WEB-INF". In WEB-INF created a folder called "Classes".
    Since my servlet is in package "Sai", the .class file reside in \Suresh\WEB-INF\Classes\Sai\ServExamp.class
    The source code is :
    package Sai;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    public class ServExamp extends HttpServlet
    public void doPost(HttpServletRequest req,HttpServletResponse res)throws IOException
    PrintWriter out=res.getWriter();
    java.util.Date today=new java.util.Date();
    out.println("<html>"+"<body>"+
    "<h1 align=center>HF\'s Chapter1 Servlet </h1>"
    +"<br>"+today+"</body>"+"</html>");
    Now i'm almost done creating a web application. Next, I constructed a simple web.xml descriptor that gives a web friendly name for my servlet, and points to the servlet. I constructed web.xml descriptor file in the WEB-INF folder (C:\bea\user_projects\domains\mydomain\applications\Suresh\WEB-INF\).
    The web.xml file source is :
    <!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <display-name>Hello World Web Application</display-name>
    <description>Test Servlet</description>
    <servlet>
    <servlet-name>ServExamp</servlet-name>
    <servlet-class>Sai.ServExamp</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>ServExamp</servlet-name>
    <url-pattern>/Suresh</url-pattern>
    </servlet-mapping>
    </web-app>
    Now I have told Weblogic that the URI /Suresh corresponds to my servlet "Sai.ServExamp".
    My Web Application is ready to be deployed at this point. I logged onto Weblogic's admin console,
    1) clicked on deployments, then navigated to "Web Application Modules" .
    2) Clicked "Deploy new Web Application Module"
    3) Navigated to the location of your web application folder (Suresh). There was a radio button next to it indicating that I can select that folder as a valid web application.
    4) I Clicked that radio button and clicked "Target Module".
    5) It informed that my web application "Suresh" will be deployed to myServer.It asked a name for my web application deployment. By default it was "Suresh"
    I clicked Deploy.
    6) After deployment, my web application "Suresh" appeared in the "Web Application Modules" tree on the left.
    I Clicked on "Suresh"( my web application) then clicked the testing tab, then clicked the link shown there(http://localhost:7001/Suresh-2).
    It was not showing my servlet (showed a 403 error)
    Error - 403
    This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
    I think so it came b'coz I don't have an index.html or index.jsp page.
    7)Instead,I added my servlet on to the URL it provided.
    http://localhost:7001/Suresh-2/Suresh
    It is showing these error code: Http: 505 resource not allowed
    The page cannot be displayed
    The page you are looking for cannot be displayed because the address is incorrect.
    Please try the following:
    If you typed the page address in the Address bar, check that it is entered correctly.
    Open the localhost:7001 home page and then look for links to the information you want.
    Click Search to look for information on the Internet.
    when i just type : http://localhost:7001/ -> Error 404 not found error
    it's showing
    Error 404--Not Found
    From RFC 2068 Hypertext Transfer Protocol -- HTTP/1.1:
    10.4.5 404 Not Found
    The server has not found anything matching the Request-URI. No indication is given of whether the condition is temporary or permanent.
    If the server does not wish to make this information available to the client, the status code 403 (Forbidden) can be used instead. The 410 (Gone) status code SHOULD be used if the server knows, through some internally configurable mechanism, that an old resource is permanently unavailable and has no forwarding address.
    I want to run my web application & any help would be appreciated.
    Thanks in advance.
    with regards,
    S.SayeeNarayanan.
    Note: I even deployed my war file, which i got by execution of (jar cv0f webapp.war . ) command from the root directory of my web application i.e. Suresh
    Then executed my webapplication it is showing
    error-505 resource not allowed.
    --------------------------------------------------------------------------------------------

    try a fully qualified path to the pem file

  • Problem with layout in Web Application Designer

    Hi all,
       I am working with the BEx Web Application Designer. Well, I execute a web template in the browser, click on right button and  choose enhanced menu, query properties and mark the check box Display Rows as Hierarchy and Expand to and from the list of values (combo-box) choose the last field that can be expanded.
    Once all the lines have been expanded and the layout of the template is longer than a page, we look for a line that is not in the first page and contract it. The problem is that when we contract the line, the layout shows  the first page, instead of the page where the line had been contracted. I have tried to solve this changing the properties that appear when the template is designed, but I haven´t found the solution. Is there any way so that i can solve it?
    Thanks in advance,
    Mª del Mar Bonilla.

    Bonilla,
    Welcome to SDN...
    Try this out...
    In the Query designer view , right click on the rows structure and select display as hierarchy. In case this option works fine , the behavior pointed out by you could be a possible bug.
    Just update the result of what I have mentioned above...
    Hope it helps..
    Arun
    P.S Assigning points is a way fo saying thank you in SDN

  • Problems about deploying Oracle web application (Forms, Reports)

    I am going to deploy Oracle web applications (Forms and Reports) and plan to use the same server machine for both Application web server and Database server.
    1. How can I enable SSL (for data encryption) on Application web server for Oracle Forms ?
    2. Since both Application web server and Database server will use the same machine, do I still need Oracle Advanced Security for data transmission between Application web server and Database server if data encryption for transmission is required ?
    3. Can I user Oracle Forms to call Oracle Report on web as I did in Client/Server in the past ?
    Experts like you may have come across such problems. Would you please give me some opinions/ideas ?
    Regards,
    Richard

    1. check the paper about the Forms servlet architecture on otn forms section for SSL tips.
    3. Check the reports and forms integration paper on otn too.

  • Problem in oracle 10g web application report printing in character mode

    Hi,
    We are using oracle dev. 10g suite based web application.
    This is an application migrated from oracle forms & report 6i.
    It's working fine except printing report in character mode. When we run the report then preview is Ok but in printing format becomes wrong.
    I means printing is not same as preview.
    Can any one help me on this situation.

    you can solve this problem by using oracle remote printing utility(orarrp)
    Nizhad
    Software Engineer,
    Accel Frontline Limited,
    Kochi.

  • How to use a tag library in multiple web applications?

    Morning all,
    Environment: Tomcat 5 on Apache2 using Mod_JK connector on Windows XP
    I have developed a custom tag library and tested it out and its working great.
    Now, How do I use in my other web applications? Do I need to copy the JAR file to webapps\app1\WEB-INF\lib, webapps\app2\WEB-INF\lib etc directories?
    The problem with this approach is, if I happen to change the tag library code, I will have to make sure that I remember to copy the new JAR file to the above mentioned directories. Ofcourse I can write a simple ant script that would do it for me, but I was wondering if there was an efficient and yet simple way of achieving the same.
    Thanks in advance,
    Joe

    Thanks Vidyut! You've answered my question.
    I placed the jar file in the $CATALINA_HOME/shared/lib directory. But where should I place the taglib TLD file? And how should I reference it in web.xml?
    Currently, my web.xml is as follows and it doesn't work.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <taglib>
    <taglib-uri>http://abc.com</taglib-uri>
    <taglib-location>c:\Tomcat\shared\lib\mytags-taglib.tld</taglib-location>
    </taglib>
    </web-app>
    Thanks again!
    Joe

  • Storing SessionManager or Server for multiple web applications

    We currently have one enterprise application with 2 web applications installed. These 2 web applications must share the same session cache.
    Toplink is installed as a shared library for both of these web applications.
    What I am wondering is how Server and SessionManager should be utilized.
    In our servlet initialization of web application one we get an instance of the SessionManager and assign the SessionManager to a static instance variable.
    static SessionManager sessionManager;
    sessionManager = SessionManager.getManager();
    Now whenever we want to get a client session from either web application we make the call
    Server serverSession = (Server) sessionManager.getSession("XXX");
    From looking at the code for the sessionManager.getSession("XXX") I see that this
    results in a synchronized method invocation which is in turn bottlenecking our database access code.
    My question is should we not just be storing the Server in a static instance variable to distribute client sessions to both web applications and not the SessionManager.

    Hi,
    One SSA is ok, but you should think about access rights. If the access is clear cut between all the web apps you should be ok with one SSA. Multiple result sources limiting on content source also works, but could easily be bypassed.
    Multiple SSA's will eat up RAM/CPU like a mother :)
    As for popular etc.. it could be due to how those sources are set up, but haven't investigated or tested this much.
    Thanks,
    Mikael
    Search Enthusiast - SharePoint MVP/MCT/MCPD - If you find an answer useful, please up-vote it.
    http://techmikael.blogspot.com/
    Author of Working with FAST Search Server 2010 for SharePoint

  • Problem in installing SAP Web Application Server

    Hi,
    I have downloaded 90 days evaluation copy of "SAP Web
    Application Java Server 6.40 SP7 for MS SQL Server". I
    tried to install the same but invain. I am getting the
    error as :
    "MDB-05505 Look up in the check table returned no
    result. ()".
    The operating system that i am working is Win 2000
    server.I have also installed JDK 4.1.2,MS SQL Server-7
    and IE 5.5.
    Please help me in resolving the problem.
    Regards
    Rajiv. V

    Hi Rajiv,
    The problem is most likely due to you needing to have SQL 2000 installed not SQL7.
    In addition to this you need to ensure that your SQL has been installed with the correct collation and had the appropriate service packs applied.
    Please let me know if you require further clarification.
    Regards
    Daniel

  • IMAP/SSL: problem connecting from a web application

    Hi,
    I try to connect to a IMAP/SSL server (with a self-signed certificate) from a web application. I followed http://www.javaworld.com/javatips/jw-javatip115.html.
    When I try to connect from a java application it works fine. But when I try it from a servlet, it fails:
    javax.mail.MessagingException: gaeron.gcrm.test.mail.DummySSLSocketFactory;
      nested exception is:
         java.net.SocketException: gaeron.gcrm.test.mail.DummySSLSocketFactory
         at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:461)
         at javax.mail.Service.connect(Service.java:236)I use Tomcat 5.5, jdk1.5.0_06 and javamail-1_3_3_01. Here is my code:
              Security.setProperty( "ssl.SocketFactory.provider", "gaeron.gcrm.test.mail.DummySSLSocketFactory");
    Properties props = new Properties();
    Session session = Session.getDefaultInstance(props);
    Store store = session.getStore("imaps");
    store.connect(server, 993, username, password);
    store.close();Can anybody help me?
    Thanks,
    El&#337;d.

    I am not sure there is a class called MBoxSSLFactory. Is that a typo? We are in the same boat. We have a web application running on Tomcat that needs to connect to the IMAP store on the MS Exchange 2003 Server. It was working fine until we enabled Basic Authentication - SSL/TLS required setting on it.
    In order to eliminate any complications due to Tomcat and all we are trying to get a simple standalone program that talks to IMAP server (using the DummySSLSocketFactory, DummyTrustManager etc) working.
    I am stuck on the same error: (shown below is the stack trace and the code we are running). I have tried all the suggestions that have been posted on this "Unconnected Sockets not implemented" issue. I have tried it with both Jdk 1.4.2_08 and JDK 1.5.0.
    The JavaMail version is 1.4. If I use JavaMail version 1.3.1 it complains that there is no store type "imaps". If I use "imap" and not "imaps" as the store type I end up getting "Authentication Failed" exception.
    Instead of a DummyTrustManager I even tried importing a certificate. We have deployed a Verisign trial certificate on the EXchange server side. So when we run the InstallCert program (http://blogs.sun.com/andreas/entry/no_more_unable_to_find) it allows us to add the valid certificates to our keystore. Once that is done we have tried to create TrustManager based on that keystore. But NOPE..No success. same problem.
    We have been stuck on this one for the last 4 days and we have a very critical client deployment that is hampered by this one. I know it is turkey time now..but would really appreciate it if some one can help us out.
    javax.mail.MessagingException: Unconnected sockets not implemented;
      nested exception is:
         java.net.SocketException: Unconnected sockets not implemented
         at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:479)
         at javax.mail.Service.connect(Service.java:297)
         at javax.mail.Service.connect(Service.java:156)
         at javax.mail.Service.connect(Service.java:105)
         at GetSSLMail.getmail.main(getmail.java:37)
    Caused by: java.net.SocketException: Unconnected sockets not implemented
         at javax.net.SocketFactory.createSocket(SocketFactory.java:97)
         at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:224)
         at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:189)
         at com.sun.mail.iap.Protocol.<init>(Protocol.java:84)
         at com.sun.mail.imap.protocol.IMAPProtocol.<init>(IMAPProtocol.java:87)
         at com.sun.mail.imap.IMAPStore.protocolConnect(IMAPStore.java:446)
         ... 4 more
    package GetSSLMail;
    /* getmail.java */
    import java.util.Properties;
    import javax.mail.*;
    //import javax.mail.internet.*;
    import java.io.*;
    public class getmail {
         //myauth auth;
         public static void main(String args[]) throws Exception {
              String host, name, passwd;
              BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
              System.out.println("Enter IMAP Host Name: ");
              host = br.readLine();
              System.out.println("Enter User name: ");
              name = br.readLine();
              System.out.println("Enter Password: ");
              passwd = br.readLine();
              java.security.Security.setProperty("ssl.SocketFactory.provider","DummySSLSocketFactory");
              // Get a Properties object
              Properties props = System.getProperties();
              props.put("mail.imaps.host", host);
              props.put("mail.imaps.port", "993");
              Authenticator auth = new myauth(name, passwd);
              Session session = Session.getDefaultInstance(props, auth);
              Store store = session.getStore("imaps");
              try {
                   store.connect(); // exception here
                   System.out.println("store connected");
              } catch (Exception e) {
                   //System.out.println("Error :" + e.toString());
                   e.printStackTrace();
              Folder folder = null;
              try {
                   folder = store.getFolder("INBOX"); // because of earlier exception,
                                                                // also
                   // exception here
              } catch (Exception e) {
                   System.out.println("Error :" + e.toString());
              folder.open(Folder.READ_ONLY);
              BufferedReader reader = new BufferedReader(new InputStreamReader(
                        System.in));
              Message message[] = folder.getMessages();
              for (int i = 0, n = message.length; i < n; i++) {
                   System.out.println(i + ": " + message.getFrom() + "\t"
                             + message[i].getSubject());
                   System.out
                             .println("Do you want to read message? [yes to read/quit to end]");
                   String line = reader.readLine();
                   if ("yes".equals(line)) {
                        System.out.println(message[i].getContent());
                   } else if ("QUIT".equals(line)) {
                        break;
         class myauth extends Authenticator {
              String username, password;
              public myauth(String name, String passwd) {
                   username = name;
                   password = passwd;
              public PasswordAuthentication getPasswordAuthentication() {
                   return new PasswordAuthentication(username, password);
    package GetSSLMail;
    import java.io.BufferedInputStream;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.InetAddress;
    import java.net.Socket;
    import java.security.KeyStore;
    import javax.net.SocketFactory;
    import javax.net.ssl.*;
    * DummySSLSocketFactory
    public class DummySSLSocketFactory extends SSLSocketFactory {
    private SSLSocketFactory factory;
    SSLContext sslcontext;
         TrustManagerFactory tmf;
         KeyStore ks;
    public DummySSLSocketFactory() {
         try {
    // try
              ks = KeyStore.getInstance("jks");          
              InputStream in = new FileInputStream("C:\\Documents and Settings\\kk12\\jssecacerts");
              in = new BufferedInputStream(in);
              ks.load(in,null);
              tmf = TrustManagerFactory.getInstance("PKIX");
              tmf.init(ks);
              sslcontext = SSLContext.getInstance("SSL");
              sslcontext.init(null, tmf.getTrustManagers(), null);
              HttpsURLConnection.setDefaultSSLSocketFactory(sslcontext.getSocketFactory());
         //SSLContext sslcontext = SSLContext.getInstance("TLS");
         //sslcontext.init(null,new TrustManager[] { new DummyTrustManager()},null);
         factory = (SSLSocketFactory)sslcontext.getSocketFactory();
         } catch(Exception ex) {
         // ignore
    public static SocketFactory getDefault() {
         return new DummySSLSocketFactory();
    public Socket createSocket(Socket socket, String s, int i, boolean flag)
                        throws IOException {
         return factory.createSocket(socket, s, i, flag);
    public Socket createSocket() throws IOException {
              System.out.println( "createSocket 0");
              return factory.createSocket();
    public Socket createSocket(InetAddress inaddr, int i,
                        InetAddress inaddr1, int j) throws IOException {
         return factory.createSocket(inaddr, i, inaddr1, j);
    public Socket createSocket(InetAddress inaddr, int i)
                        throws IOException {
         return factory.createSocket(inaddr, i);
    public Socket createSocket(String s, int i, InetAddress inaddr, int j)
                        throws IOException {
         return factory.createSocket(s, i, inaddr, j);
    public Socket createSocket(String s, int i) throws IOException {
         return factory.createSocket(s, i);
    public String[] getDefaultCipherSuites() {
         return factory.getDefaultCipherSuites();
    public String[] getSupportedCipherSuites() {
         return factory.getSupportedCipherSuites();
    package GetSSLMail;
    //import com.sun.net.ssl.X509TrustManager;
    import java.security.cert.X509Certificate;
    import javax.net.ssl.TrustManager;
    public class DummyTrustManager implements TrustManager {
         public boolean isClientTrusted( X509Certificate[] cert) {
         return true;
         public boolean isServerTrusted( X509Certificate[] cert) {
         return true;
         public X509Certificate[] getAcceptedIssuers() {
         return new X509Certificate[ 0];

Maybe you are looking for

  • Help!  Is DDM the tool for me ?

    I'm stepping into two large and complex databases with many tables and much linkage. (running over Oracle 10) I'm going to be implementing multiple sites with clones of these databases - but each site will have a subset of the total data. The data is

  • Regarding data type

    hi, Is it  possible to create two data types with same name with in same name space thanks

  • Workflow Administrator Tcode

    Hello Experts, Can any of you help me with a workflow administrator tcode that has the ability to find all the workitem using the user ID. Im aware of the tcodes that can be used to find the workflow status with the task - dates etc... but im not abl

  • ORA-22950 cannot ORDER objects without MAP or ORDER method

    Hello I'm receiving the above error message at the BULK COLLECT point. I've pasted all relevant code below - any help much appreciated. This has got me stumped.... Thanks in advance Tim create or replace type PROG_MEDIA_TYP as object (episode_id numb

  • Where do we have Fixed date field  in sales order

    Hi All, Where do we have the field "fixed date" in the sales order, What is the relevance of the field. Thanks in Advance, Regards Jai