How to handle multiple datasources in a web application?
I have a J2EE Web application with Servlets and Java ServerPages. Beside this I have a in-house developed API for certain services built using Hibernate and Spring with POJO's and some EJB.
There are 8 databases which will be used by the web application. I have heard that multiple datasources with Spring is hard to design around. Considering that I have no choice not to use Spring or Hibernate as the API's are using it.
Anyone have a good design spesification for how to handle multiple datasources. The datasource(database) will be chosen by the user in the web application.
Let me get this straight. You have a web application that uses spring framework and hibernate to access the database. You want the user to be able to select the database that he wants to access using spring and hibernate.
Hopefully you are using the Spring Framework Hibernate DAO. I know you can have more that one spring application context. You can then trying to load a seperate spring application context for each database. Each application context would have it's own configuration files with the connection parameters for each datasource. You could still use JNDi entries in the web.xml for each datasource.
Then you would need a service locater so that when a user selected a datasource he would get the application context for that datasource which he would use for the rest of his session.
I think it is doable. It means a long load time. And you'll need to keep the application contexts as small as possible to conserve resources.
Similar Messages
-
How to handle multiple tables data in Entity Beans?
How to handle multiple tables data in Entity Beans?
i mean, my bean (non trivial) is responsible for frequent
insertion in one table and some deletion on another table.
Can anyone of you...please..?Is your data model right? If you are adding in one and deleting in another it sounds to me more like a process that an entity, in which case you may revisit your data model and simplify it, add in a session bean with the process method to co-ordinate between the two.
However, if you want to map multiple different tables within a single entity bean it is possible and just part of the mapping. How you actualyl specify it depends on which implementation you are working with.
Cheers,
Peter. -
How to handle multiple actions in the webservice ?
Hi Guys,
I have multiple operations in the webservcie and under soap action in the receiver soap adapter, i dont know how to handle multiple soap operations.
can anybody guide me, how to acheive this ?
Thanks,
sriniHi Srini !
This weblog shows the general design of a scenario with BPM
/people/krishna.moorthyp/blog/2005/06/09/walkthrough-with-bpm
This link:
http://help.sap.com/saphelp_nw04/helpdata/en/de/766840bf0cbf49e10000000a1550b0/content.htm
show how to insert a predefined BPM pattern. You could use one of the BpmPatternSerialize.... patterns to see how you BPM should look like...
Basically it should be:
1) Receive Step (async/sync, as you need) to trigger the BPM
2) Send step (sync) for first webservice
3) Send step (sync) for second webservice
N) Send step (sync) for N webservice
N+1) if the whole communication is sync, here you need to use a send step to return back the answer to sender.
Regards,
Matias. -
How to handle multiple selection in the Spark List control with checkbox as itemrenderer?
Hi All,
I am using checkbox as an ItemRenderer in spark list.
I have a query.
how to handle multiple selection in the Spark List control with checkbox as itemrenderer?
how to retrieve the selected item label?
Thank you in advance.Hi there, I'll tweak your code a little bit to something like this:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical">
<mx:Script>
<![CDATA[
import mx.events.ListEvent;
import mx.controls.CheckBox;
[Bindable]
private var mySelectedIndexes:ArrayCollection=new ArrayCollection();
private function onChange(e:ListEvent):void
if(CheckBox(e.itemRenderer).selected){
mySelectedIndexes.addItem(e.rowIndex);
}else{
mySelectedIndexes.removeItemAt(mySelectedIndexes.getItemIndex(e.rowIndex));
chkList.selectedIndices=mySelectedIndexes.toArray();
]]>
</mx:Script>
<mx:ArrayCollection id="collection">
<mx:Object label="Test A"/>
<mx:Object label="Test B"/>
<mx:Object label="Test C"/>
<mx:Object label="Test D"/>
<mx:Object label="Test E"/>
<mx:Object label="Test F"/>
<mx:Object label="Test G"/>
</mx:ArrayCollection>
<mx:List id="chkList" dataProvider="{collection}" itemRenderer="mx.controls.CheckBox" itemClick="onChange(event);" allowMultipleSelection="true"/>
</mx:Application> -
How to handle multiple request in the servlet
how to handle multiple request in the servlet...
Example:
java forum...
i'm login in the java forum at this time 1000 members make login in this....how happended in servlet?
if we use thread how to implement in servlet ?Serlets are already threaded. The application container instantiates the servlet, then uses this instance in a new thread for every use.
This is the reason that you should use (almost) no instance variables in a Servlet, but rather that (almost) everything should be local to the method. -
how to handle multiple site to site IPsec vpn on ASA, any best practice to to manage multiple ipsec vpn configurations
before ver 8.3 and after version 8.3 ...8.4.. 9 versions..Hi,
To my understanding you should be able to attach the same cryptomap to the other "outside" interface or perhaps alternatively create a new crypto map that you attach only to your new "outside" interface.
Also I think you will probably need to route the remote peer ip of the VPN connection towards the gateway IP address of that new "outside" and also the remote network found behind the VPN connection.
If you attempt to use VPN Client connection instead of L2L VPN connection with the new "outside" interface then you will run into routing problems as naturally you can have 2 default routes active at the sametime (default route would be required on the new "outside" interface if VPN Client was used since you DONT KNOW where the VPN Clients are connecting to your ASA)
Hope this helps
- Jouni -
How to handle multiple connection or user with l2cap
hi friends,
I need your help please a.s.a.p
how to handle multiple connection with l2cap protocol in j2me
sorry,
I'm a new programmer in j2me
thanks all...Please stick with the original thread http://forum.java.sun.com/thread.jspa?threadID=5200413&tstart=0
Cross-posting is very rude, and JSch has nothing to do with JSSE, directly. It is an SSH2 API. It does (AFAIK) use some parts of JSSE, but those parts are definately not your problem.
You already have answers in the other thread. -
How to handle multiple save exceptions (Bulk Collect)
Hi
How to handle Multiple Save exceptions? Is it possible to rollback to first deletion(of child table) took place in the procedure.
There are 3 tables
txn_header_interface(Grand Parent)
orders(parent)
order_items (Child)
One transaction can have one or multiple orders in it.
and one orders can have one or multiple order_items in it.
We need to delete the data from child table first then its parent and then from the grand parent table.if some error occurs anywhere I need to rollback to child record deletion. Since there is flag in child table which tells us when to delete data from database.
Is it possible to give name to Save exceptions?
e.g.
FORALL i IN ABC.FIRST..ABC.LAST SAVE EXCEPTIONS A
FORALL i IN abc.FIRST..ABC.LAST SAVE EXCEPTIONS B
if some error occurs then
ROLLBACK A; OR ROLLBACK B;
Please find the procedure attached
How to handle the errors with Save exception and rollback upto child table deletion.
CREATE OR REPLACE
PROCEDURE DELETE_CONFIRMED_DATA IS
TYPE TXN_HDR_INFC_ID IS TABLE OF TXN_HEADER_INTERFACE.ID%TYPE;
TXN_HDR_INFC_ID_ARRAY TXN_HDR_INFC_ID;
ERROR_COUNT NUMBER;
BULK_ERRORS EXCEPTION;
PRAGMA exception_init(bulk_errors, -24381);
BEGIN
SELECT THI.ID BULK COLLECT
INTO TXN_HDR_INFC_ID_ARRAY
FROM TXN_HEADER_INTERFACE THI,ORDERS OS,ORDER_ITEMS OI
WHERE THI.ID = OS.TXN_HDR_INFC_ID
AND OS.ID = OI.ORDERS_ID
AND OI.POSTING_ITEM_ID = VPI.ID
OI.DW_STATUS_FLAG =4 --data is moved to Datawarehouse
MINUS
(SELECT THI.ID FROM TXN_HEADER_INTERFACE THI,ORDERS OS,ORDER_ITEMS OI
WHERE THI.ID = OS.TXN_HDR_INFC_ID
AND OS.ID = OI.ORDERS_ID
OI.DW_STATUS_FLAG !=4);
IF SQL%NOTFOUND
THEN
EXIT;
END IF;
FORALL i IN TXN_HDR_INFC_ID_ARRAY.FIRST..TXN_HDR_INFC_ID_ARRAY.LAST SAVE
EXCEPTIONS
DELETE FROM ORDER_ITEMS OI
WHERE OI.ID IN (SELECT OI.ID FROM ORDER_ITEMS OI,ORDERS
OS,TXN_HEADER_INTERFACE THI
WHERE OS.ID = OI.ORDERS_ID
AND OS.TXN_HDR_INFC_ID = THI.ID
AND THI.ID = TXN_HDR_INFC_ID_ARRAY(i));
FORALL i IN TXN_HDR_INFC_ID_ARRAY.FIRST..TXN_HDR_INFC_ID_ARRAY.LAST SAVE
EXCEPTIONS
DELETE FROM ORDERS OS
WHERE OS.ID IN (SELECT OS.ID FROM ORDERS OS,TXN_HEADER_INTERFACE THI
WHERE OS.TXN_HDR_INFC_ID = THI.ID
AND THI.ID = TXN_HDR_INFC_ID_ARRAY(i));
FORALL i IN TXN_HDR_INFC_ID_ARRAY.FIRST..TXN_HDR_INFC_ID_ARRAY.LAST SAVE
EXCEPTIONS
DELETE FROM TXN_HEADER_INTERFACE THI
WHERE THI.ID = TXN_HDR_INFC_ID_ARRAY(i);
COMMIT;
DBMS_OUTPUT.PUT_LINE(TO_CHAR(SYSDATE, 'DD-MON-YY HH:MIPM')||':
DELETE_CONFIRMED_DATA: INFO:DELETION SUCCESSFUL');
EXCEPTION
WHEN OTHERS THEN
ERROR_COUNT := SQL%BULK_EXCEPTIONS.COUNT;
DBMS_OUTPUT.PUT_LINE(TO_CHAR(SYSDATE, 'DD-MON-YY HH:MIPM')||':
DELETE_CONFIRMED_DATA: ERROR:Number of errors is ' ||ERROR_COUNT);
FOR indx IN 1..ERROR_COUNT LOOP
DBMS_OUTPUT.PUT_LINE('Error ' || indx || 'occurred during
'||'iteration'||SQL%BULK_EXCEPTIONS(indx).ERROR_INDEX);
DBMS_OUTPUT.PUT_LINE('Error is '
||SQLERRM(-SQL%BULK_EXCEPTIONS(indx).ERROR_CODE));
END LOOP;
END DELETE_CONFIRMED_DATA;
Any suggestion would be of great help.
Thanks in advance
AnuIf you have one or two places in your code that need multiple exceptions, just do it with multiple catch statements. Unless you are trying to write the most compact Programming 101 homework program, inventing tricks to remove two lines of code is not good use of your time.
If you have multiple catches all over your code it could be a code smell. You may have too much stuff happening inside one try statement. It becomes hard to know what method call throws one of those exceptions, and you end up handling an exception from some else piece of code than what you intended. E.g. you mention NumberFormatException -- only process one user input inside that try/catch so it is easy to see what error message is given if that particular input is gunk. The next step of processing goes inside its own try/catch.
In my case, the ArrayIndexOutOfBoundsException and
NumberFormatException should be handled by the same way.Why?
I don't think I have ever seen an ArrayIndexOutOfBoundsException that didn't indicate a bug in the code. Instead of an AIOOBE perhaps there should be an if statement somewhere that prevents it, or the algorithm logic should prevent it automatically. -
How to upload documents to DMS from web application externally
We have a webdynpro based J2EE application. We want to create a SAP DMS ( KPRO ) document using this web application externally.
Any inputs on this scenario ?
I am able to create similar using an ABAP report which reads the client file and create the DMS document using BAPI_DOCUMENT_CREATE.
How do we achieve this using external web application ..
Please HELP in this.
Thanks..Hi Divya,
Good day...!
A custom UI component will berrequired to upload the data from a Flat File into CRM WEBUI.
The View in this UI Component can have 2 fields lets say u2013 ID and File to Upload and a button 'upload'.
When the UPLOAD button is clicked , the event u2018ONFILEUPLOADu2019 is triggered.
A Javascript function u2018fileUpload()u2019 reads the Excel file and formats the data in the form of a long string with Line Breaks corresponding to each row in the excel file. This string is stored in a Hidden HTML form element u2018Excel_Datau2019.
In the Event Handler for u2018ONFILEUPLOADu2019, the hidden form element u2018EXCEL_DATAu2019 is read and retrived.
lv_file_data = request->get_form_field( name = lv_excel_data ).
me->lv_id = request->get_form_field( name = lv_schema_id ). -
How to use maven project with fusion web application
hi i have seen the tutoriel of oracle on how to use maven 2 with jdevelopper ,
but how to integrate it on a fusion web application ???
Edited by: 922454 on 9 avr. 2012 04:39If you have not managed to help yourself out with maven for ADF here is a quick workaround you can try. Invoke ant's ojdeploy task from maven. Refer step-by-step guide here.
http://maveninjdeveloper.blogspot.in/2012/04/handle-adf-application-maven-ant.html -
How sharepoint understand when user requests for web applications by their DNS names
HI
I configured Alternate access mapping in my sharepoint farm for default ,intranet zones
and spt farm has two web front end servers and they load balancing by F5 device
in WFE servers there are different web applications are running on different ports
so here I want to know how load balancing works, load balancing configured in F5 device.
when users request a webapplication from browser (ex http://cms) where this request will go
1)when I ping cms and other web applicaations it returns me a loadbalancer server IP for all web applications;
ping cms : it returns 10.xxx.0.80 , same ip returns when I ping for other web app
but ex CMS web application run on the 10.xxx.1.26:81 port in sharepoint server
2) and these sharepoint web applications running on different ports in sharepoint web servers , so here how sharepoint understand when user requests for web applications by their DNS names
http://cms and http://products etc
adilI'm not sure if the F5 can add a port number (I'm not an expert on load balancers). But in general if you design the SharePoint site to run on port 81 then you need to have port 81 appended to the request or it won't work. http://cms in your
example would take you to http://cms:80 not http://cms:81. But in general DNS will resolve the address back to the F5 load balancer. The load balancer will look at the header of the HTTP request (which contains the original address you requested)
and forward the request to the appropriate web front end IP address. If your web front end is using one IP address for multiple sites then those sites need to be differntiated by using a custom port like 81 (which must be included in the original request)
or because a host header was bound to the web application when it was created. If they are running on different port numbers then the request must include the port number by the time it gets to the SharePoint server.
Paul Stork SharePoint Server MVP
Principal Architect: Blue Chip Consulting Group
Blog: http://dontpapanic.com/blog
Twitter: Follow @pstork
Please remember to mark your question as "answered" if this solves your problem. -
How to handle Java popup in oracle forms application through Open Script?
I want to record and test oracle form application but it popup java dialogue box and Open Script can't handle java object.
So how to handle the Java popups in forms application?Hi, Have you been able to resolve this?
-
How to enhance the context menu in Web Applications - BW 7.0
We have to enhance the context menu of several Web Applications and,
initially, we based our solution on the paper "How to enhance the
context menu of Web Applications", from June, 2002, but the solution
described on the paper refers to the BW version 3.0 and we need the
solution for the BW version 7.0. The technical content described on the
paper, version 3.0, is very different from the content of the version
7.0, used by us. Is this feature available for the version 7.0?Hi,
did you find a solution already?
Thanks,
Frank -
Can i have multiple ActionServlet in a web Application?
Hi
Can i have multiple ActionServlet in a web Application?
if YES then please give me the sample configuration file..
thanks & Regards
raghavanHi,
This forum is related discussions about creator. Please post this to an appropriate forum
You may post here
http://forum.java.sun.com/forum.jspa?forumID=33
MJ -
How to import javafx into a existing web application??
how to import javafx into a existing web application in netbeans 6.5??
how to import javafx into a existing web application in netbeans 6.5??
Maybe you are looking for
-
How call PDF file in Web dynpro screen?
i have one labal,one input box and one search button also...Just i clk search button mns...that PDK file will come..for printing purpose... How i will call that PDF file? please give details...
-
I would like to have a "script" font available when I sign e-mail forms or create forms.
-
Different line terminator for SocketChannel
Any ideas on how to specify a different line terminator than '\n' for the SocketChannel.read() method, such as ASCII character 127?
-
Photo- Edit in option to edit in a third party app. is not working
In the Develop module, when I go to the Menu Option Photo -> Edit in, normally LR2 created a TIFF file and uploaded it in the third party application for further editing. However, since yesterday, I am getting an error window with the following text.
-
HT203128 How do i delete songs/podcasts off my ipod in itunes 12.1
Since the upgrade, I cannot see how I can delete songs or podcasts off my ipod. I will run out of memory very quickly. If I put in delete songs into Help it says select and press backspace. This does not work.