Webdynpro and EJB on different server
I have a WebDynpro app that will be deployed to server A and that has to access an EJB that will be deployed to server B, server A and server B don't from a cluster.
I don't know how to call the EJB in my WebDynpro app via remote way.
in WebDynpro app call EJB code is:
String result = null;
Context ctx = null;
Hashtable env = new Hashtable();
PIEJB remote = null;
PIEJBHome remoteHome = null;
env.put(
Context.INITIAL_CONTEXT_FACTORY,
"com.sap.engine.services.jndi.InitialContextFactoryImpl");
env.put(Context.PROVIDER_URL, "sapides:50304");
env.put("force_remote", "true");
try {
ctx = new InitialContext(env);
remoteHome =
(PIEJBHome) PortableRemoteObject.narrow(
ctx.lookup("PIEJBBean"),
PIEJBHome.class);
remote = remoteHome.create();
result = remote.getPIAvg("yesterday", "today").getValue();
} catch (Exception e) {
result = e.toString();
wdContext.currentContextElement().setTest(result);
when run this code,report error:
java.lang.NoClassDefFoundError: com.xxx.piejb.PIEJBHome
but i have add the piejb.jar in Used DC!
can anyone tell me how to do?
thanks advance!
Hi Ha
I just tested the link and it worked fine for me, if you want it, you can give an email and i'll send the pdf guide to you. Besides here you can find a guided example about calling the webserivces methods from a WD on the Using the Car Rental Web Service with Web Dynpro, and on this one you can find information about the development of a webservices using an ejb.
Hope it Helps
Luis Barragá
Similar Messages
-
Deploy PetStore Webapps and EJBs to different tiers
Hi,
Basically, the PetStore example deploys JSP/Web/EJBs to one node in one petstore.ear.
I want to seperate the Web apps and EJBs to different nodes that running Weblogic
by re-packaging the ear file to get a war file and ejb ear file. I deployed this
war file to one node and ejb ear to another node. Is this the right approach?
If so, how the JSP knows that the EJBs are in different node now?
Thanks,
CathyHi,
Basically, the PetStore example deploys JSP/Web/EJBs to one node in one petstore.ear.
I want to seperate the Web apps and EJBs to different nodes that running Weblogic
by re-packaging the ear file to get a war file and ejb ear file. I deployed this
war file to one node and ejb ear to another node. Is this the right approach?
If so, how the JSP knows that the EJBs are in different node now?
Thanks,
Cathy -
Servlet and EJB on different machine: Security propagation
Hi all,
I have an application, where my servlets and EJBS are deployed on the same machine.So
when in my servlet a user need to authenticate himself, security credentials are
propagated to the EJB automatically.I'd like to know in the case where the components
are on different machine if I need to put the credential in my InitialContext
when my servlet calls my EJB or if it is also done automatically.
Cheers
romainSay your stub is in a jar called stub.jar.
You need to put that stub somewhere that it can be reached through a protocol for which Java has a URL type - so you can put it on a shared file system and use a file URL or behind an http server and use an http URL.
Let's use http - put stub.jar at the docroot of a web server.
Then, when you start your SERVER code, include this VM parameter:
-Djava.rmi.server.codebase="http://<serveraddress>stub.jar"
Now your client will be able to use http to load the stub file out of stub.jar through http.
If you do use a file URL, make sure the shared directory you put your jar in is not on the client's classpath. -
ODI and Essbase in different server to read the file error
Hi,
I have ODI and Essbase installed in different server.
I have created an interface to execute a calc script on top of an essbase cube. I kept the Caclscript.csc file in one folder in ODI server and provide the path
EXTRACTION_QUERY_FILE parameter is the path of the .csc file i placed in ODI server. it executed successfully to generate the extract file using the calc script in the specified path on Essbase server.
Now i want to read that file and load it to a relational table so map the network drive from ODI server to Essbase server where the file has been generated and provided the EXTRACT_DATA_FILE_IN_CALC_SCRIPT parameter as the Network drive path but ODI is unable to read the file.
any other option to read the file reside in essbase server and load it to relational table.
com.hyperion.odi.essbase.ODIEssbaseException: com.hyperion.odi.essbase.ODIEssbaseException: Error occured while reading the data file produced by calculation script.
-KPI would install an ODIAgent on the Essabse server and use this agent when running this particular operation
-
Dear All,
In our project we need to integrate WebDynpro with EJB (Stateless and Entity Beans)
Would anyone please help me out by providing weblinks, PDFs related to this.
Thanks in Advancehttp://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70929198-0d36-2b10-04b8-84d90fa3df9c?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70d2638c-4b04-2d10-d2a3-992fdf1e3d55?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/8041f93c-8e76-2b10-d5b9-862ed0140cc1?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/302e7c42-2b08-2d10-539f-8a87cbf97fb9?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/502f70a8-33a4-2b10-3dbe-bdcb5e25c6da?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/20b21892-c31c-2a10-f484-fcef1eaf8c4f?quicklink=index&overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/00bddb57-456c-2b10-cc8d-b6980d75299b?quicklink=index&overridelayout=true
regards,
Angelo -
Share Configuration Manager Entries between WebDynpro and EJB
Hi there,
I have an annoying problem: I would like to have a WebDynpro as full-blown configuration interface for my EJBs. As steted in the docu, it is not possible to share configurations between applications.
With EJB and Web Modules I would just place them in the same Enterprise Application. But I cannot as WebDynpro projects to enterprise applications (as far as I know).
Does anyone have a clou about I could manage this issue?
Thanks!
helgeHi Maksim,
at the link you've provided it is described how to use the Configuration Manager within an EJB Module.
My Problem is that I want to use it from an WebDynpro Application. But there I don't have a META-INF\application-j2ee-engine.xm to configure the dependency.
This itself is not a problem since you can also access the Configuration Manager via JNDI.
My problem now is that the EJB Module (more precise the enterprise application where the EJB Module is included) needs to share the configurtion with the Dynpro. But vi JNDI you only get the ApplicationConfigurationManager - which is application specific.
So the question is how I could share the configuration between WebDynpro and EjbModule...
Regards,
helge -
We have a three server farm. (SPWebTest, SPAppTest, SPDBTest)
We have added an additional database server (SPDBRMTest) and an additional application server (SPAPPRMTest).
Today I created a new Crawl Database on SPDBRMTest and a new Crawler on SPAPPRMTest.
I create a distribution rule to all crawling activity for 1 web application to the new crawl database on SPDBRMTest.
This web application was part of the original crawl and had no errors or issues. We are trying to scale our Search to improve performance but when a full crawl is executed against this content source I get the following crawl error:
"The account password was not specified. Specify the password."
I have tried re-entering the "Default Content Access Account" but the issue continues.Hi Brian,
when you add the crawl rules, do the account that is provided have the permission to read the content at the web application?
http://technet.microsoft.com/en-us/library/jj219686(v=office.15).aspx
please disable the loopback check, perhaps it may help:
http://support.microsoft.com/kb/896861
Regards,
Aries
Microsoft Online Community Support
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. -
Installation 10g and Apex on different server
Hallo,
I trying to install Oracle 10g Standard Edition on one server and the Oracle HTTP Server with HtmlDB/Apex on another one.
Both systems are Linux (Ubuntu 8.4). The database works fine and the the Installation of HtmlDB with HTTP Server from the Companion CD worked also.
I also configured the dads.conf but when i try to access htmlDB, there comes following failure:
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Oracle-Application-Server-10g/10.1.2.0.0 Oracle-HTTP-Server Server at pecos-web Port 7777
The error log shows the following:
[Fri Jul 11 16:45:19 2008] [error] [client 127.0.0.1] [ecid: 1215787519:127.0.1.1:18046:0:2,0] mod_plsql: DAD '/pls/htmldb' is disabled because of misconfiguration. Please refer to the log entries during server startup for more information.
[Fri Jul 11 16:52:15 2008] [crit] mod_plsql: DAD /pls/htmldb disabled => Duplicate DAD
[Fri Jul 11 16:52:15 2008] [crit] mod_plsql: DAD /pls/htmldb disabled => Duplicate DAD
[Fri Jul 11 16:52:15 2008] [notice] FastCGI: process manager initialized (pid 18110)
[Fri Jul 11 16:52:16 2008] [notice] Oracle-Application-Server-10g/10.1.2.0.0 Oracle-HTTP-Server configured -- resuming normal operations
And last my configuration of the dads.conf:
Alias /i/ "/home/oracle/oracle/product/10.2.0/db/Apache/Apache/images/"
<Location /pls/htmldb>
SetHandler pls_handler
Order deny,allow
Allow from all
AllowOverride None
PlsqlDatabaseUsername HTMLDB_PUBLIC_USER
PlsqlDatabasePassword password
PlsqlDatabaseConnectString 192.168.1.73:1521:slmhot1
PlsqlDefaultPage htmldb
PlsqlDocumentTablename wwv_flow_file_objects$
PlsqlDocumentPath docs
PlsqlDocumentProcedure wwv_flow_file_manager.process_download
PlsqlAuthenticationMode Basic
PlsqlNLSLanguage GERMAN_GERMANY.WE8MSWIN1252
</Location>
I hope there is anybody who can help me.
ThanksThere is an APEX forum ... please post your APEX related questions there. Thank you.
-
Essbase and database in different server
Hi,
It is possible to put the ESSBASE in one server and database(oracle , SQL Server) in another server? It is possible, what are the things i want to do?
Thanks,
PCHi,
Assuming that you've got powerful boxes for this purpose, if you are going to use database server just as a repository database server for say, Planning, then that's fine to have essbase and rdbms on the same server. However, it's not advisable to have essbase on a server where a heavy datawarehouse is co-hosted.
Alp -
HTTP and OC4J on different server
Hi
We have HTTP server running on machine1 and HTTP and OC4J running on machine2.
Because of security issues, We want to shutdown HTTP on machine2 and use HTTP server on machine1 and redirect requests to machine2.
Can any one pls let us know how to do it.
Thanks in Advance.hi user11159690
Maybe this can help:
"Oracle® HTTP Server Administrator's Guide 10g Release 3 (10.1.3) B25211-02"
"7.32 mod_oc4j"
http://download.oracle.com/docs/cd/B25221_04/web.1013/b25211/confmods.htm#i1025739
Maybe more specifically "Oc4jMount":
http://download.oracle.com/docs/cd/B25221_04/web.1013/b25211/confmods.htm#CIHJBGFB
(tip : You can use "Your Control Panel" to make your name visible in forum posts.)
success
Jan Vervecken -
IR, SLD, ID, RWB on different server
Hi,
Is it possible to install IR, ID, RWB and SLD on different server?
If yes, what is the use of that.
-Naveen.Hi Naveen,
It is not possible. -
Referencing EJB on remote server AND using deployment descriptor
We're using Weblogic 6.1sp2 under Windows 2000.
We have a web application on server A and several EJBs running on server B -
some of these may in the future be moved to different servers.
We would like to ensure that this only requires reconfiguring the deployment
descriptors.
In our web app, we access the EJB's like this:
AccountHome accHome = (AccountHome) (new
InitialContext()).lookup("java:comp/env/ejb/AccountHome")
- we then map ejb/AccountHome to the JNDI name in the weblogic.xml file in
the web app - the JNDI name will usually (but not always) be the class name
of the implementing class, e.g. system.billing.accounting.AccountHome
However, to make this work when the EJB is on server B, we must put a
jndi.properties file in the server A classpath containing
java.naming.provider.url=t3://server_b:7001/
to point to server B.
Now, this makes ALL JNDI lookups on server A go to server B - this is not
what we want. Especially not in the case where some EJB's move to server C -
B and C may be in separate clusters and will not be clustering the JNDI
tree. Also, other web applications on the server will need to go to
different servers.
Alternatively, we could specify a property set in the InitialContext
constructor with a provider url. But in that case, the mapping from
web.xml/weblogic.xml is apparently not applied - or rather, if we look up
"java:comp/env/ejb/AccountHome", weblogic maps it to
"system.billing.accounting.AccountHome" and then tries to look it up on the
local machine, server A.
If we look up "system.billing.accounting.AccountHome", it does correctly
look it up on the server specified in the provider url and finds the entry.
However, this would mean that we would have to specify the exact jndi name.
In addition, we would have to hard-code the server name for each lookup.
An alternative would be to "copy" the JNDI entries from server B to server A
(or to some other shared, global JNDI registry). But these would need to be
kept in sync - especially since server B is really a cluster, where
different servers may come online at different times and register their EJBs
as clusterable, so the stubs would need to be continously updated.
My best idea is to bypass the whole web.xml/weblogic.xml mapping scheme and
just add our own config file with stuff like
<mappings>
<map entry="java:comp/env/ejb/AccountHome">
<jndi-properties>
java.naming.provider.url=t3://server_b:7001/
java.naming.security.principal=jndiuser
java.naming.security.credentials=mysecretpassword
</jndi.properties>
<jndi-name>sysmte.billing.accounting.AccountHome</jndi-name>
</map>
</mappings>
We then need to wrap all the lookups in our own lookup mechanism which first
checks the config file to find any mappings.
However, this seems like reinventing the wheel and will also confuse most
deployment tools etc.
Does anybody have any suggestions where we
1. Don't put a jndi.properties file in the server classpath
2. Lookup ejb's using "java:comp/env/ejb/SomeEJB" - not the JNDI name.
3. Don't hardcode the server names in the application - but potentially
in the deployment descriptor.
4. Can look up different EJB's on different machines
Niels HarremoësThere is an article on dev2dev that may explain what you are seeing...
http://dev2dev.bea.com/articlesnews/discussion/thread.jsp?thread=142
HTH
dwfa
"Niels Ull Harremoës" <[email protected]> wrote in message
news:[email protected]...
It turns out that we can make it work by entering the url of the server in
the weblogic.xml entry - e.g. instead of having
<reference-descriptor>
<ejb-reference-description>
<ejb-ref-name>ejb/AccountHome</ejb-ref-name>
<jndi-name>system.billing.accounting.AccountHome</jndi-name>
</ejb-reference-description>
</reference-descriptor>
we enter
<reference-descriptor>
<ejb-reference-description>
<ejb-ref-name>ejb/AccountHome</ejb-ref-name>
<jndi-name>t3://server_b:7001/system.billing.accounting.AccountHome</jndi-na
me>
</ejb-reference-description>
</reference-descriptor>
However, we are unsure on whether this will establish a new JNDIconnection
to server_b on every lookup? And it's not documented anywhere?
Does anybody have any other suggestions?
"Niels Ull Harremoës" <[email protected]> wrote in message
news:[email protected]...
We're using Weblogic 6.1sp2 under Windows 2000.
We have a web application on server A and several EJBs running on serverB -
some of these may in the future be moved to different servers.
We would like to ensure that this only requires reconfiguring thedeployment
descriptors.
In our web app, we access the EJB's like this:
AccountHome accHome = (AccountHome) (new
InitialContext()).lookup("java:comp/env/ejb/AccountHome")
- we then map ejb/AccountHome to the JNDI name in the weblogic.xml file
in
the web app - the JNDI name will usually (but not always) be the classname
of the implementing class, e.g. system.billing.accounting.AccountHome
However, to make this work when the EJB is on server B, we must put a
jndi.properties file in the server A classpath containing
java.naming.provider.url=t3://server_b:7001/
to point to server B.
Now, this makes ALL JNDI lookups on server A go to server B - this is
not
what we want. Especially not in the case where some EJB's move to serverC -
B and C may be in separate clusters and will not be clustering the JNDI
tree. Also, other web applications on the server will need to go to
different servers.
Alternatively, we could specify a property set in the InitialContext
constructor with a provider url. But in that case, the mapping from
web.xml/weblogic.xml is apparently not applied - or rather, if we look
up
"java:comp/env/ejb/AccountHome", weblogic maps it to
"system.billing.accounting.AccountHome" and then tries to look it up onthe
local machine, server A.
If we look up "system.billing.accounting.AccountHome", it does correctly
look it up on the server specified in the provider url and finds theentry.
However, this would mean that we would have to specify the exact jndiname.
In addition, we would have to hard-code the server name for each lookup.
An alternative would be to "copy" the JNDI entries from server B to
server
A
(or to some other shared, global JNDI registry). But these would need tobe
kept in sync - especially since server B is really a cluster, where
different servers may come online at different times and register theirEJBs
as clusterable, so the stubs would need to be continously updated.
My best idea is to bypass the whole web.xml/weblogic.xml mapping schemeand
just add our own config file with stuff like
<mappings>
<map entry="java:comp/env/ejb/AccountHome">
<jndi-properties>
java.naming.provider.url=t3://server_b:7001/
java.naming.security.principal=jndiuser
java.naming.security.credentials=mysecretpassword
</jndi.properties>
<jndi-name>sysmte.billing.accounting.AccountHome</jndi-name>
</map>
</mappings>
We then need to wrap all the lookups in our own lookup mechanism whichfirst
checks the config file to find any mappings.
However, this seems like reinventing the wheel and will also confuse
most
deployment tools etc.
Does anybody have any suggestions where we
1. Don't put a jndi.properties file in the server classpath
2. Lookup ejb's using "java:comp/env/ejb/SomeEJB" - not the JNDIname.
3. Don't hardcode the server names in the application - butpotentially
in the deployment descriptor.
4. Can look up different EJB's on different machines
Niels Harremoës -
Need a document about how to move the fact and dimension table's to different server's
Hello Experts,
I need a detailed doc on how to move the fact and dimension tables to different server's.Please help me out from this
Thanks in advance....You still haven't told anyone what products besides Essbase you are using, without which this is an impossible question to answer.
https://forums.oracle.com/thread/2585515
https://forums.oracle.com/thread/2585171
Are you connecting to these tables from Essbase with a load rule / ODBC? Using Studio? Using Integration Services? Any Drill-Through reporting set up?
This may sound harsh, but if you truly don't know how to answer any of these questions you should probably not be anywhere near this task... -
Good day everyone,
I have a question in regard to real server operation with different server farms, and VIPs
Can a Real Server be associated ( for simpliciy) with two different Server Farms that have a VIP associated with each, servicing the same TCP Port (443).
Example:
SF-A
RSRV-1: 192.168.1.10 /24
RSRV-2: 192.168.1.11 /24
VIP-A: 192.168.1.20 /24
VIP-A: https:web-A
Protocol: HTTPS
SF-B
RSRV-2: 192.168.1.11 /24
RSRV-3: 192.168.1.12 /24
VIP-B: 192.168.1.30 /24
VIP-b: https:web-B
Protocol: HTTPS
Client-A: 172.16.128.10
Client-B: 172.16.128.15
I have attached an sketch depicting the connectivity.
As always any feedback/Suggestions will be greatly apprecaited.
Cheers,
Raman AzizianRaman,
This type of config is no problem. What the server is doing is virtual web hosting. The server would have two different web services running for the same IP, but each listening for a unique host header.
From an IP point of view both connections would be destined to the rserver address on port 80, but in the http header they would have two different Host headers.
one for www.example1.com and the second for www.example2.com. If the web server is configured correct so each host name is tied to one web service it will not have any issues.
The config you attached looks ok. The way you have the sticky group is ok doing source IP. If you use cookies for the sticky group I would suggest you create two sticky groups each with a different cookie name and add the same serverfarm to both groups. The client will only send a cookie for the domain it received it from so using the same cookie in two vips could cause problems if the same client hits both vips.
Hope that helps
Regards
Jim -
Client Applet and EJB Server problem
Hi,
I developed a applet client that tries to connect to an EJB on the server side. The Applet runs okay in JDev3 but if I deploy it and test it outside the JDev tool I get an error. I tracked the problem to the following line of code:
ic = new InitialContext(environment);
Do I run into an applet security problem? If so what do i have to do to allow the applet to read/write to the local system?
Thanks for any hints!
Peter
Error I get
JAR cache enabled.
Opening http://pete/gateway/clientmanagement.jar no proxy
CacheHandler file name: C:\WINNT\Profiles\peter.000\Temporary Internet Files\Content.IE5\ALMN6PAZ\clientmanagement[1].jar
Creating an initial context
Opening http://pete/gateway/oracle/oas/container/nls/Version_en_US.class no proxy
CacheHandler file name: null
nullHi,
I have still problems getting the client applet running. I tested it with the appletviewer and I modified the security.policy file. I allow the applet to almost everthing but i still get the following error:
What do I do wrong? Do I really have to sign the jar file? Do I miss some stub classes?
Thanks for any hints...
Peter
JAR cache disabled.
Opening http://pete/Gateway/. no proxy
Opening http://pete/Gateway/. no proxy
Opening http://pete/Gateway/test/Client.class no proxy
CacheHandler file name: C:\WINNT\Profiles\peter.000\Temporary Internet Files\Content.IE5\ALMN6PAZ\Client[1].class
Opening http://pete/Gateway/test/Client$1.class no proxy
CacheHandler file name: C:\WINNT\Profiles\peter.000\Temporary Internet Files\Content.IE5\ALMN6PAZ\Client$1[1].class
Creating an initial context
Looking for the EJB published as 'Gateway/GatewayProcessorRemote'
Opening http://pete:80/_RMProxyURL_ no proxy
Naming exception!
[Root exception is org.omg.CORBA.NO_IMPLEMENT: minor code: 0 completed: No]javax.naming.ServiceUnavailableException
at oracle.oas.jndi.oas.SecCosNamingContext.resolve(SecCosNamingContext.java:265)
at oracle.oas.jndi.oas.BeanContext.lookup(BeanContext.java:328)
at oracle.oas.jndi.oas.BeanInitialContext.resolve(BeanInitialContext.java:265)
at oracle.oas.jndi.oas.BeanContext.lookup(BeanContext.java:328)
at oracle.oas.jndi.oas.BeanInitialContext.lookup(BeanInitialContext.java:165)
at oracle.oas.jndi.oas.WrapperContext.lookup(WrapperContext.java:78)
at oracle.oas.jndi.oas.BeanContext.lookup(BeanContext.java:422)
at javax.naming.InitialContext.lookup(InitialContext.java:288)
at test.Client.initializeEJB(Client.java:104)
at test.Client.startButton_actionPerformed(Client.java, Compiled Code)
at test.Client$1.actionPerformed(Client.java:55)
at java.awt.Button.processActionEvent(Button.java:308)
at java.awt.Button.processEvent(Button.java:281)
at java.awt.Component.dispatchEventImpl(Component.java, Compiled Code)
at java.awt.Component.dispatchEvent(Component.java, Compiled Code)
at java.awt.EventQueue.dispatchEvent(EventQueue.java, Compiled Code)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java, Compiled Code)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)
null
Maybe you are looking for
-
Please I can not get a .jar file to run on XP SP3 start/run/cmd/
I can not get a .jar file to run on XP SP3 start/run/cmd/ Please help if can figure this out. I'm convinced it is a Windows XP SP3 problem from searching on google and seeing other ppl on XP SP3 with same problem (but no working solution for myself).
-
I am having a problem with just one video on YouTube, and I can't explain it or get it to play; it just shows the Loading screen indefinitely. Here is a link to the video: Extreme Funny: http://youtube.com/watch?v=GuMMfgWhm3g The clip plays fine on t
-
Authorization connected with organizational unit
Dear friends, I've to define authorization to an e-mail transaction based on organizational unit (PPOMA_CRM). I don't know if it is possible, please, help me! Thanks
-
So
-
Internationalization in ADFJClient
Hi All, I am in a process to develop an application using ADF. I want to know wether ADF provide me the facility to develop the application in multilingual or not. If yes, what are the options available with me apart from ADF UIX and JSP. If no, with