Accesing method of WebDynpro DC through JAVA DC
Hi,
I have a requirement where a JAVA DC needs to use a WebDynpro DC as a Used DC. WebDynpro DC has a public part and its interface controller has method (eg: addmethod(int a, int b) )defined to access the business logic
I know how to add a WebDynpro DC to another WebDynpro DC as a Used DC and use it.
The question i am asking is:
There is a JAVA DC A which needs to use a WebDynpro DC B as its used DC. I have added the DC B as a used DC in DC A.
Now, In the JAVA DC A's class, what is the coding that I have to do to access the method in WebDynpro DC B.
Imagine there is a method in WebDynpro DC B called addmethod(int a, int b). And, any DC using this DC B can access this method through its interface controller.
What is the code that I have to write in the JAVA DC A so that I can access the method addmethod(int a, int b) in the interface controller of WebDynpro DC B ?
Tx in advance
Cheers,
Hi Navneet,
you know the references in EAR project. ?
it is in application-j2ee-engine.xml file.
add reference for your web dynpro project there
Similar Messages
-
Passing Parameters via Post Method from Webdynpro Java to a web application
Hello Experts,
I want to pass few parameters from a web dynpro application to an external web application.
In order to achieve this, I am referring to the below thread:
HTTP Post
As mentioned in the thread, I am trying to create an additional Suspend Plug parameter (besides 'Url' of type String) with name 'postParams' and of type Map.
But when I build my DC, I am getting the same error which most of the people in the thread have mentioned:
Controller XXXCompInterfaceView [Suspend]: Outbound plug (of type 'Suspend') 'Suspend' may have at most two parameters: 'Url' of type 'string' and 'postParams' of type 'Map'.
I am using SAP NetWeaver Developer Studio Version: 7.01.00
Kindly suggest if this is the NWDS version issue or is it something else that I am missing out.
Also, if it is the NWDS version issue please let me know the NWDS version that I can use to avoid this error.
Any other suggestion/alternative approach to pass the parameters via POST method from webdynpro java to an external web application apart from the one which is mentioned in the above thread is most welcome.
Thanks & Regards,
AnuragHi,
This is purely a java approach, even you can try this for your requirement.
There are two types of http calls synchronous call or Asynchronous call. So you have to choose the way to pass parameters in post method based on the http call.
if it is synchronous means, collect all the values from users/parameters using UI element eg: form and pass all the values via form to the next page is nothing but your web application url.
If it is Asynchronous means, write a http client in java and integrate the same with your custom code and you can find an option for sending parameters in post method.
here you go and find the way to implement Asynchronous scenario,
http://www.theserverside.com/news/1365153/HttpClient-and-FileUpload
http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html
http://digiassn.blogspot.com/2008/10/java-simple-httpurlconnection-example.html
Thanks & Regards
Rajesh A -
Need Help-How Store the input parameter through java bean
Hello Sir,
I have a simple Issue but It is not resolve by me i.e input parameter
are not store in Ms-Access.
I store the input parameter through Standard Action <jsp:useBean>.
jsp:useBean call a property IssueData. this property exist in
SimpleBean which create a connection from DB and insert the data.
At run time servlet and server also show that loggging are saved in DB.
But when I open the table in Access. Its empty.
Ms-Access have two fields- User, Password both are text type.
Please review these code:
login.html:
<html>
<head>
<title>A simple JSP application</title>
<head>
<body>
<form method="get" action="tmp" >
Name: <input type="text" name="user">
Password: <input type="password" name="pass">
<input type="Submit" value="Submit">
</form>
</body>
</html>LoginServlet.java:
import javax.servlet.*;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException{
try
String user=request.getParameter("user");
String pass=request.getParameter("pass");
co.SimpleBean st = new co.SimpleBean();
st.setUserName(user);
st.setPassword(pass);
request.setAttribute("user",st);
request.setAttribute("pass",st);
RequestDispatcher dispatcher1 =request.getRequestDispatcher("submit.jsp");
dispatcher1.forward(request,response);
catch(Exception e)
e.printStackTrace();
}SimpleBean.java:
package co;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
public class SimpleBean {
private String user="";
private String pass="";
private String s="";
public String getUserName() {
return user;
public void setUserName(String user) {
this.user = user;
public String getPassword() {
return pass;
public void setPassword(String pass) {
this.pass = pass;
public String getIssueData() //method that create connection with database
try
System.out.println("Printed*************************************************************");
getUserName();
getPassword();
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("Loading....");
Connection con=DriverManager.getConnection("jdbc:odbc:simple");
System.out.println("Connected....");
PreparedStatement st=con.prepareStatement("insert into Table1 values(?,?)");
System.out.println("~~~~~~~~~~~~~~~~~~~~");
String User=getUserName();
st.setString(1,User);
String Password=getPassword();
st.setString(2,Password);
st.executeUpdate();
System.out.println("Query Executed");
con.close();
s= "Your logging is saved in DB ";
System.out.println("Your logging is saved in DB *****************");
return(s);
catch(Exception e)
e.printStackTrace();
return "failed";
}submit.jsp:
This is Submit page
<html><body>
Hello
Student Name: <%= ((co.SimpleBean)request.getAttribute("user")).getUserName() %>
<br>
Password: <%= ((co.SimpleBean)request.getAttribute("pass")).getPassword() %>
<br>
<jsp:useBean id="st" class="co.SimpleBean" scope="request" />
<jsp:getProperty name="st" property="IssueData" />
</body></html>web.xml:<web-app>
<servlet>
<servlet-name>one</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>one</servlet-name>
<url-pattern>/tmp</url-pattern>
</servlet-mapping>
<jsp-file>issue.jsp</jsp-file>
<jsp-file>submit.jsp</jsp-file>
<url-pattern>*.do</url-pattern>
<welcome-file-list>
<welcome-file>Login.html</welcome-file>
</welcome-file-list>
</web-app>Please Help me..Thanks.!!!
--Dear Sir,
Same issue is still persist. Input parameter are not store in database.
After follow your suggestion when I run this program browser show that:i.e
This is Submit page Hello Student Name: vijay
Password: kumar
<jsp:setProperty name="st" property="userName" value="userValue/> Your logging is saved in DB
Please review my code.
login.html:
{code}<html>
<head>
<title>A simple JSP application</title>
<head>
<body>
<form method="get" action="tmp" >
Name: <input type="text" name="user">
Password: <input type="password" name="pass">
<input type="Submit" value="Submit">
</form>
</body>
</html>{code}
LoginServlet.java:
{code}import javax.servlet.*;
import javax.servlet.http.*;
public class LoginServlet extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException{
try
String userValue=request.getParameter("user");
String passValue=request.getParameter("pass");
co.SimpleBean st = new co.SimpleBean();
st.setuserName(userValue);
st.setpassword(passValue);
request.setAttribute("userValue",st);
request.setAttribute("passValue",st);
RequestDispatcher dispatcher1 =request.getRequestDispatcher("submit.jsp");
dispatcher1.forward(request,response);
catch(Exception e)
e.printStackTrace();
}{code}
SimpleBean.java:
{code}package co;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
public class SimpleBean {
private String userValue="";
private String passValue="";
private String s="";
public String getuserName() {
return userValue;
public void setuserName(String userValue) {
this.userValue = userValue;
public String getpassword() {
return passValue;
public void setpassword(String passValue) {
this.passValue= passValue ;
public String getissueData() //method that create connection with database
try
System.out.println("Printed*************************************************************");
getuserName();
getpassword();
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("Connection loaded");
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@VijayKumar-PC:1521:XE","SYSTEM","SYSTEM");
System.out.println("Connection created");
PreparedStatement st=con.prepareStatement("insert into vij values(?,?)");
System.out.println("~~~~~~~~~~~~~~~~~~~~");
String userName=getuserName();
st.setString(1,userName);
String password=getpassword();
st.setString(2,password);
st.executeUpdate();
System.out.println("Query Executed");
con.close();
s= "Your logging is saved in DB ";
System.out.println("Your logging is saved in DB *****************");
return(s);
catch(Exception e)
e.printStackTrace();
return "failed";
}{code}
submit.jsp:
{code}This is Submit page
<html><body>
Hello
Student Name: <%= ((co.SimpleBean)request.getAttribute("userValue")).getuserName() %>
<br>
Password: <%= ((co.SimpleBean)request.getAttribute("passValue")).getpassword() %>
<br>
<jsp:useBean id="st" class="co.SimpleBean" scope="request" />
<jsp:setProperty name="st" property="userName" value="userValue/>
<jsp:setProperty name="st" property="password" value="passValue"/>
<jsp:getProperty name="st" property="issueData" />
</body></html>web.xml:<web-app>
<servlet>
<servlet-name>one</servlet-name>
<servlet-class>LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>one</servlet-name>
<url-pattern>/tmp</url-pattern>
</servlet-mapping>
<jsp-file>submit.jsp</jsp-file>
<url-pattern>*.do</url-pattern>
<welcome-file-list>
<welcome-file>Login.html</welcome-file>
</welcome-file-list>
</web-app>Sir I can't use EL code in jsp because I use weblogic 8.1 Application Server.This version are not supported to EL.
Please help me...How store th input parameter in Database through Java Bean -
Error while trying to access BPEL process through java on localhost
I have a service (CreditRatingService that comes along with install) running on the BPEL engine. Trying to invoke it through java. However, I get an exception. Below is more information. Appreciate any help.
My method
public String invokeBpel()
Map payload;
Hashtable jndi = null;
try
String ssn ="1234";
String xml = "<ssn xmlns=\"http://services.otn.com\">" + ssn + "</ssn>";
Locator locator;
locator = new Locator("default","welcome1",jndi);
IDeliveryService deliveryService =
(IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
NormalizedMessage res =null;
try
res = deliveryService.request("CreditRatingService","process", nm);
catch(RemoteException oNameEx)
System.out.println(oNameEx.getMessage());
payload = res.getPayload();
System.out.println( "BPELProcess CreditRatingService executed!<br>" );
System.out.println( "Credit Rating is " + payload.get("payload") );
catch (Exception e)
System.out.println("This is the exception" + e);
System.out.println(e.getStackTrace());
finally
return "toPage3";
}//end method
Exception text
Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found
Env
ADF Business Components:10.1.3.39.84
BPEL Designer 10.1.3.1.0 (Build 061009.0802)
CVS Version Internal to Oracle JDeveloper (client-only)
Java™ Platform 1.5.0_06
Oracle IDE 10.1.3.39.84
Struts Modeler Version 10.1.3.39.84
UML Modelers Version 10.1.3.39.84
Versioning Support 10.1.3.39.84Hashtable jndi = null;
try
String ssn ="1234";
String xml = "<ssn xmlns=\"http://services.otn.com\">" + ssn + "</ssn>";
Locator locator;
locator = new Locator("default","welcome1",jndi);
this implies to be in the same initial context then the bpel engine, whicuh you cannot be as long as you are not either part of the ejb code of orabpel or a child of it. and if you are you can use the Locator API without the jndi properties.
hth clemens -
Unable to checkin a document using 'CHECKIN_UNIVERSAL" service through java
Hi All,
I am trying to checkin a document through java code and following is my code part for the same( UCM 11g)
But whenever i run this code part, it throws the following exception
intradoc.common.ServiceException:csUnableToCheckin,<null>!csUnabletoExecMethod,populateMissingDocumentValues
Can anyone help me with this?
Code part
private void checkinDoc()
File f=new File("D:/testfolder/BPEL.pdf");
System.out.println(" absolute path :"+f.getAbsolutePath());
String filePath = f.getAbsolutePath().replace("\\", "/");
checkedOutDataBinder.putLocal("IdcService", "CHECKIN_UNIVERSAL");
checkedOutDataBinder.putLocal("dDocTitle","test");
checkedOutDataBinder.putLocal("dDocAuthor", "weblogic");
checkedOutDataBinder.putLocal("dDocType","Document");
checkedOutDataBinder.putLocal("dSecurityGroup","public");
checkedOutDataBinder.putLocal("doFileCopy", "1");
checkedOutDataBinder.putLocal("primaryFile", filePath);
checkedOutDataBinder.putLocal("xCollectionID", "425180507509000004");
checkedOutDataBinder = executeService(checkedOutDataBinder,
"weblogic");
private DataBinder executeService(final DataBinder binder,
final String userName) throws DataException, ServiceException
// obtain a connection to the database
Workspace workspace = getSystemWorkspace();
// check for an IdcService value
String cmd = binder.getLocal("IdcService");
if (cmd == null)
throw new DataException("!csIdcServiceMissing");
// obtain the service definition
ServiceData serviceData = ServiceManager.getFullService(cmd);
if (serviceData == null)
throw new DataException(LocaleUtils.encodeMessage(
"!csNoServiceDefined", null, cmd));
// create the service object for this service
Service service = ServiceManager.createService(serviceData.m_classID,
workspace, null, binder, serviceData);
// obtain the full user data for this user
UserData fullUserData = getFullUserData(userName, service, workspace);
service.setUserData(fullUserData);
// binder.m_environment.put(REMOTE_USER, userName);
ServiceException error = null;
try
// init the service to not send HTML back
service.setSendFlags(true, true);
// create all the ServiceHandlers and implementors
service.initDelegatedObjects();
// do a security check
service.globalSecurityCheck();
// prepare for the service
service.preActions();
// execute the service
service.doActions();
// do any cleanup
service.postActions();
// store any new personalization data
// service.updateSubjectInformation(true);
//service.updateTopicInformation(binder);
catch (ServiceException e)
error = e;
e.printStackTrace();
finally
// Remove all the temp files.
service.cleanUp(true);
workspace.releaseConnection();
// handle any error
if (error != null)
// throw new ServiceException(error.m_errorCode, error
// .getMessage());
return binder;
}I have been running into the same exception, albeit with UCM 10g:
Content item 'xxx' was not successfully checked in. Unable to execute service method 'populateMissingDocumentValues'. (System Error: Runtime error: java.lang.NullPointerException
at collections.CollectionMetaHandler.validateMetaDataDates(CollectionMetaHandler.java:771)
at collections.CollectionMetaHandler.fillInUndefinedMeta(CollectionMetaHandler.java:806)
at collections.CollectionUserHandler.setUndefinedMetaData(CollectionUserHandler.java:1353)
at collections.CollectionUserHandler.populateMissingDocumentValues(CollectionUserHandler.java:1275)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at intradoc.common.IdcMethodHolder.invokeMethod(ClassHelperUtils.java:617)
at intradoc.common.ClassHelperUtils.executeMethodReportStatus(ClassHelperUtils.java:293)
at intradoc.server.ServiceHandler.executeAction(ServiceHandler.java:79)
at intradoc.server.Service.doCodeEx(Service.java:490)
at intradoc.server.Service.doCode(Service.java:472)
at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1360)
at intradoc.server.Service.doAction(Service.java:452)
at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1201)
at intradoc.server.Service.doActions(Service.java:447)
it seems to have something to do with the xCollectionID.
If I don't set this, it works fine (checking in and out, checking in new revision). If I set it I can check in a new item using CHECKIN_NEW but I am unable to use CHECKIN_UNIVERSAL to check in a new revision.
Any pointers would be appreciated.
Edited by: Jaap on 6-jun-2011 2:41
Edited by: Jaap on 6-jun-2011 3:09 -
How to append records in MSAccess through Java using JDBC:ODBC
Hello,
I was able to retrieve records from MSAccess database through JAVA over the JDBC-ODBC bridge.
If I want to append records to a table (for eg. photo1 table containing photono., length, breadth, area as
columns) I could not able to do so through JAVA.
I am using JTable with the above fields. The user is displayed with the JTable and he has to enter
data inside the JTable and press a button titled "Append". Then the JAVA program should append
whatever the user has entered in the JTable as a single record inside the MSAccess database.
Can anyone help me please?hi i too am having similar problem. i am able to create a table in ms access through java but when i insert values i get a msg that it has inserted the values but when i check the table by opening ms-access there are no values in the table.
the insert statement i am using is
" insert into tk1 values(3,'tarun')"
further i tried using the methods commit, setAutoCommit etc with the connection object. -NO GO.
can you help me ? -
Request parameter are not stored in database through Java Bean
Hi,
I want to store the request parameter in database through Java Bean.Allthough program are properly run but value are not store in DB.
Here My code:
Login.html:<html>
<head>
<title>A simple JSP application</title>
<head>
<body>
<form method="get" action="submit.jsp" >
Name: <input type="text" name="User">
Password: <input type="password" name="Pass">
<input type="Submit" value="Submit">
</form>
</body>
</html>SimpleBean.java:
package co;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
public class SimpleBean implements java.io.Serializable{
private String User="";
private String Pass="";
public SimpleBean(){}
public String getUser() {
return User;
public void setUser(String User) {
this.User = User;
public String getPass() {
return Pass;
public void setPass(String Pass) {
this.Pass = Pass;
public void show()
try
System.out.println("Printed*************************************************************");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
System.out.println("Loading....");
Connection con=DriverManager.getConnection("jdbc:odbc:Ex11dump");
System.out.println("Connected....");
PreparedStatement st=con.prepareStatement("insert into Table1 values(?,?)");
System.out.println("~~~~~~~~~~~~~~~~~~~~");
String User=getUser();
st.setString(1,User);
String Pass=getPass();
st.setString(2,Pass);
int y= st.executeUpdate();
System.out.println(y);
System.out.println("Query Executed");
con.commit();
con.close();
System.out.println("Your logging is saved in DB *****************");
catch(Exception e)
e.printStackTrace();
}submit.jsp:
<jsp:useBean id="obj" class="co.SimpleBean"/>
<jsp:setProperty name="obj" property="*" />
<jsp:getProperty name="obj" property="User" /> <br>
<jsp:getProperty name="obj" property="Pass" /> <br>
<% obj.show();%>
<%
out.println("Ur data is saved in DB");
%>Please Help me.
Thanks.The issue is in the naming of your fields.
Change User -> user and Pass->pass
Name: <input type="text" name="user">
Password: <input type="password" name="pass"> -
PI 7.1 Access to Dynamic Configuration through Java Class
My Current scenario involves IDCO -> FILE communications in PI 7.1 using XSL where the file name is dynamic.
I have attempted calling a Java Class from XSL with the use SAPXMLTOOL kit option set in the adaptor and it works but I need to be able to call the transform method
public void transform(TransformationInput arg0, TransformationOutput arg1)
from XSL so I can access the message and update the File Name via Dynamic Configuration.
Whilst I can call a static class with in the object I can not call transform with the correct arguments (arg0, arg1). I need access to arg0 (payload) to set/figure out the filename. I can calculate the filename in XSL and pass it to the Java but in a static method it is useless as it need to access the arg0 which is a object and obviously non-static context.
Is this possible ? How do I get access to Dynamic Configuration from XSL through Java in 7.1 ?
I have successfully called a static method but that is no help.
Thanks in advance.Suraj,
Unfortunately you link isnt operational but thankyou anyway, I have managed to call as Java class as per my original post, but a static method does not allow me to get a handle to the Dynamic Configuration Variables in the message.
It seems importing the 7.0 LIBS may be an option and Im not entirely sure I have that option.
It certainly isnt possible to use the JDK5 XML implementation to even call a static method on an Java OBJ from XSL (obviously the USE SAPXMLTOOLKIT option is there for a reason).
I think and again I could be wrong but direct access via XSLT..
LINK:http://help.sap.com/saphelp_nwpi71/helpdata/EN/e2/e13fcd80fe47768df001a558ed10b6/frameset.htm
Is what Im looking for, I shall report back success or failure but the doco seems to fit the bill. Im not sure why I wanted to instatiate a sperate Java class when it can all exist in the XSLT. -
How can i execute a .jar or .jad through java?
I want to execute a .jar like i do in SE using the class RunTime in ME does anybody know how can i do it? There is no method exec in MIDP Runtime API
I have a MIDlet that receives a jar file from another PDA using DatragramConection and FileConnection. It's working well. When i'm running my application i'll send the jar file to another aplication and this application should receive, execute and return the result. For example, if i have a simple program that prints Hello World. I'll send the program the other PDA will execute and then return a String. I have to call the jr file through java because my MIDlet wil be already running.
Could you understand my problem? -
Not able to send mail through java
Hi,
I am sending an email through java but it gives me exception that Authentication failed exception but I have provided correct credentials
I have given stack trace as below
19 Mar 2013 16:32:58,579 614378 [[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'] ERROR alfaaesar.portal.pages.common.bo.AfCmnCommonBO – AfCmnCommonBo SendMail Exception:javax.mail.AuthenticationFailedException
at javax.mail.Service.connect(Service.java:319)
at alfaaesar.portal.pages.common.bo.AfCmnCommonBO.sendMail(AfCmnCommonBO.java:939)
at alfaaesar.portal.pages.literature.action.AfLitetatureRequestAndViewAction.InsertLiteratureReqDtlsInAlfaLitHeaderTbl(AfLitetatureRequestAndViewAction.java:619)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.el.parser.AstValue.invoke(Unknown Source)
at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
at org.apache.myfaces.trinidad.component.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:46)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96)
at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:889)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:379)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at alfaaesar.portal.pages.filter.AnonymousSessionFilter.doFilter(AnonymousSessionFilter.java:47)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.portlet.client.adapter.adf.ADFPortletFilter.doFilter(ADFPortletFilter.java:32)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.framework.events.dispatcher.EventDispatcherFilter.doFilter(EventDispatcherFilter.java:44)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.wcps.client.PersonalizationFilter.doFilter(PersonalizationFilter.java:75)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.content.integration.servlets.ContentServletFilter.doFilter(ContentServletFilter.java:168)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.webcenter.lifecycle.filter.LifecycleLockFilter.doFilter(LifecycleLockFilter.java:151)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)Also given code below in java to send an email .
public Boolean sendMail(String host,String port,String debugFlag,String authFlag, String userId,String password,String fromEmailAddress,String toEmailAddress,String subject,String eMailcontent ) throws MessagingException {
Boolean sendMailFlag = false;
Properties props = new Properties();
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", port);
props.put("mail.debug", debugFlag); //Set default to false
props.put("mail.smtp.auth", authFlag); //Set default to true
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.sendpartial","true");
// props.put("mail.smtp.starttls.enable", "true");
logger.info("Sending Email.......");
//System.out.println("Sending Email.......");
try {
// Instantiatee a message
final String mailUserId = userId;
final String mailPassword = password;
Session mailSession = Session.getDefaultInstance(props, new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(mailUserId, mailPassword);
MimeMessage msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(fromEmailAddress));
String[] to = toEmailAddress.split(",");
InternetAddress[] addressTo = new InternetAddress[to.length];
for (int i = 0; i < to.length; i++)
addressTo[i] = new InternetAddress(to);
msg.setRecipients(Message.RecipientType.TO, addressTo);
if(JSFUtils.getFromSession("ccEmailAddress")!=null){
String ccEmailAddress =(String)JSFUtils.getFromSession("ccEmailAddress");
JSFUtils.removeFromSession("ccEmailAddress");
String[] cc = ccEmailAddress.split(",");
InternetAddress[] addressCC = new InternetAddress[cc.length];
for (int i = 0; i < cc.length; i++)
addressCC[i] = new InternetAddress(cc[i]);
msg.setRecipients(Message.RecipientType.CC, addressCC);
msg.setSubject(subject,"utf-8");
msg.setSentDate(new Date());
//msg.setText(eMailcontent);
msg.setContent(eMailcontent, "text/html; charset=\"utf-8\"");
if (toEmailAddress.indexOf(',') > 0)
msg.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(toEmailAddress));
else
msg.setRecipient(Message.RecipientType.TO,
new InternetAddress(toEmailAddress));
Transport transport = mailSession.getTransport();
transport.connect(host,Integer.parseInt(port),userId.trim(),password.trim());
transport.send(msg);
transport.close();
//Send the message
// Transport.send(msg);
sendMailFlag = true;
// System.out.println("mail sent");
} catch (MessagingException mex) {
// Prints all nested (chained) exceptions as well
//logger.info(mex.getMessage());
logger.error("AfCmnCommonBo SendMail Exception:"+JSFUtils.getStackTrace(mex));
//mex.printStackTrace();
sendMailFlag = false;
return sendMailFlag;
Edited by: Wecenter Guru on Mar 19, 2013 5:02 PMHi All,
My question got resolved.It is due to the userId and fromEmailAddress was not of same account holder.because of which it is giving relaying denied type exception -
Want to access RESTful Services through Java Program
We are trying to access RESTful Services exposed by Oracle database cloud through our Java code, with authentication enabled for a particular user.
Till now, we have completed below steps:
1) We have a working account with Oracle database cloud (Username – xxx.xxx)
2) We log in using the credentials for above account, and navigate to Oracle Apex ? SQL Workshop ? RESTful Services
3) We create a new “RESTful Service Module” by filling out the details as below:
Name: SampleTest
URI Prefix: test
URI Template: /getallemp
Pagination Size: 25 (kept to default)
Required Privilege: TestGroupPrivilege
Resource Handler Details:
Method: GET
Source Type: Query
Format: JSON
Source: select * from emp
After creating the above module and testing it, it works fine and the data is retrieved in JSON successfully.
The resulting URL for above RESTful Service Module is: https://<HOST_URL>/apex/test/getallemp
Note that “TestGroupPrivilege” is a privilege assigned to the user group “RESTful Services” and the user “xxx.xxx” is a member of “RESTful Services” user group.
4) We are unable to call the RESTful services from Java program. We are passing username and password in request header as basic authentication. But, we are getting: Error 500--Internal Server Error
5) If we change the “Required Privilege” to default i.e. no privileges present on the module, we can get the response through Java code and everything works perfectly fine.
Please suggest us in: How to access RESTful Services through Java code by passing user credentials in HTTP header for authentication. Also let us know if we have to do any settings through Apex, in case we are missing any.
Message was edited by: NeerajGirolkar
- When we are logging in to Oracle cloud on browser and execute the Oracle cloud RESTful service in another tab of same browser, we are able to get the result. But when executed the same RESTful service from a different browser or java program we get internal server error.
- After investigation, we found that when user logs in to oracle database cloud, a cookie is set in browser with name s “OAMAuthnCookie_cstest-domo.db.us1.oraclecloudapps.com:443” and value as some random token. This cookie is passed in the subsequent requests to the RESTful Service calls when using same browser and as a result, we are able to get the results
- In the Java program, we copied the same cookie with random token in the HTTP Request header and we got the proper response from REST APIs.
- It seems that this cookie is created by an Oracle Middleware tool/server called as OAM – Oracle Accounts Manager, which sends the authentication token after successful authentication and creates the cookie.
- We found that the cookie that OAM creates on authentication is exactly in the same format i.e. ‘OAMAuthnCookie_cstest-domo.db.us1.oraclecloudapps.com:443’. So, we are guessing that Oracle cloud uses OAM for authentication. Please refer to following link for same : http://docs.oracle.com/cd/E14571_01/doc.1111/e15478/sso.htm
Can anyone please suggest:
1. How to provide authentication to Oracle Cloud REST APIs from java program?
2. How to pass the username and password in Java code to OAM (or how to communicate with OAM using Java) so that we can receive the unique token from OAM. We can use the token in the further requests? 3. Also in Oracle cloud white papers , it is mentioned that they support OAuth2.0. But we didn’t find any URLs for same. Can anyone please confirm?
Thanks
~ Neeraj GirolkarHi Nilesh,
We tried to connect to Oracle Cloud Database using the way you suggested above, but unfortunately it is not working as well.
Can you let us know the authentication process with Oracle Cloud Database? We found in documentation that it uses OAM (Oracle Access Manager) for authentication. Can you tell us a bit about that? That will be extremely helpful.
Thanks,
- Neeraj -
Accessing RUN through java programming
Sir,
i need to develop a java application t access "run" in start menu.How can i access the run menu through java programming.?I want to run the program in the run command when we input command through the java program..please help me..if you have the code palese send it tio me please..........But I cant access the drives for eg: I wrote c:\programfiles as input but i got an exception like this
error=3
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
at java.lang.Runtime.exec(Runtime.java:591)
at java.lang.Runtime.exec(Runtime.java:429)
at java.lang.Runtime.exec(Runtime.java:326)
at ex.main(ex.java:10)
how can correct this error... -
Adding rows to J2ME WTK/Settings/User Defined (through Java code)
Hi all..
Just a quick question..
Is it possible to add Key/Value pairs to a MIDlet's 'User Defined' field through Java code..(ie) - add a new row to the User Defined field..
If not, can anyone tell me how a Bluetooth-Client GUI can save an image it has been sent by a Bluetooth-Server GUI?
Thanks in advance..
Rookieif i understand you, you want to call application module method when user clicks on add button on the UI and your table is from VO
so what i can come up for now is:
1) create variable binding from the iterator for both name and price.
2) on your UI action button :
<af:commandButton actionListener="yourbean.addToCart">
<f:attribute name="pName" value ="binding.<created name bind variable>"
<f:attribute name="pPrice" value = "binding.<created price bind variable>"
</af:commandButton>
3) custom Managed Bean:
//yourBean.java
public void addToCart(ActionEvent e){
// get binding here
// use executeWitParams method to send parameter to the function "testMethod" and execute
//AppModuleImp.java
public void testMethod(String pName,String pPrice) {
CardVOImpl vo = this.getCartVO1();
CardVORowImpl r = (CardVORowImpl)vo.createRow();
r.setAttribute("NAME", pName);
r.setAttribute("PRICE", pPrice);
vo.insertRow(r);
Hope this helps...
Let me know if not..
Thanks
Edited by: MavenDev on Oct 30, 2011 8:08 PM -
How to obtain response from asyn bpel process invoked through java
I need to get the response from Asynchronous bpel process which im invoking through java using DeliveryPost method whose return type is void.
I was able to write java code for the above process
the code is here
NormalizedMessage nm = new NormalizedMessage( );
String uniqueBpelId = com.collaxa.cube.util.GUIDGenerator.generateGUID();
java.util.Map msgProps = new HashMap();
// NormalizedMessage res = deliveryService.request("OraFormsService", "initiate", nm);
//deliveryService.post(null,null,null,null);
msgProps.put("conversationId",uniqueBpelId);
nm.setProperty("conversationId",uniqueBpelId);//to set the property for this message
nm.addPart("payload",xml1);//to add to the payload of this message
deliveryService.post("OraFormsService", "initiate", nm);
// System.out.println("con1 "+IDeliveryConstants.STATE_HANDLED);
StringBuffer buf = new StringBuffer();
WhereCondition cond;
cond = new WhereCondition(buf.append(SQLDefs.IM_state).append( " = " ).append(IDeliveryConstants.STATE_UNRESOLVED ).toString() );
//cond = WhereConditionHelper.whereInstancesOpen();
IInvokeMetaData imd[] = locator.listInvokeMessages(cond);
String ids[] = new String[imd.length];
// print out the partial process information
// for processes in manual recovery status on invoke
for (int i = 0; i < imd.length; i++)
System.out.println("ConversationId=" +
imd.getConversationId());
System.out.println("ProcessId=" +
imd[i].getProcessId());
System.out.println("State=" + imd[i].getState());
ids[i] = imd[i].getConversationId();
Thanks for the Help -
Implement callback for an asynchronous BPEL process through Java
Hi ,
I am trying to implement a callback functionality for an asynchronous BPEL process through java.
I found the code in the samples folder of SOA suite installation folder .
<SOA_HOME>\bpel\samples\tutorials\102.InvokingProcesses\rmi\com\otn\samples\async.
There is an AsyncInstanceWatchdog object which registers a callback object(in this case an object of AsyncCallbackImpl class) for a specific CONVERSATION_ID.
String convId = GUIDGenerator.generateGUID();
nm.setProperty(NormalizedMessage.CONVERSATION_ID, convId);
deliveryService.post(proc_name, "initiate", nm);
// register the callback
watchdog.registerAsyncCallback(convId, testAsyncHandler,
locator.getDomainAuth());
// start it
watchdog.start();
There is no problem till the last line. But once the BPEL process returns the control( does a callback), it throws the following error.
May 25, 2010 3:36:06 PM oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER
WARNING: Exception returned by remote server: {0}
ORABPEL-02118
Variant not found.
The variant "output" has not been declared in the current scope. All variants must be declared in the scope before being accessed.
Please check that the variant "output" is properly declared; otherwise there may be a misspelling in the name of the variant.
at com.collaxa.cube.engine.core.Scope.getVariantRV(Scope.java:535)
at com.collaxa.cube.engine.CubeEngine.getFieldValue(CubeEngine.java:2668)
For your reference the variable output is declared in the definition of AsyncCallbackImpl (which implements the IAsyncInstanceCallback interface).
There are 2 methods defined in the AsyncCallbackImpl class.
public void onResult(Map pResultMessage) {
System.out.println("called back! ");
Iterator iTest = pResultMessage.keySet().iterator();
while (iTest.hasNext()) {
String key = (String)iTest.next();
System.out.println(XMLHelper.elementToString((Element)pResultMessage.get(key)));
public String getVariableName() {
return "output";
The variable name is same given in the sample code. And the BPEL process returns variable named output. So the name should not be a problem.
Is it because of the scope of the variable.. If so, how do I change it.
Any help would be appreciated.
Edited by: saptarishi on May 25, 2010 4:24 PM
Edited by: saptarishi on May 26, 2010 4:45 PMSolved it by some googling .... :)
Here is the link:-
[http://abhishek-soablog.blogspot.com/2008/09/orabpel-02118.html]
or
[http://beautifulwaste.blogspot.com/2008/04/calling-asynchronous-bpel-process.html]
Both gives the same solution..
In pre 10.1.3.3 release the default behaviour were to keep global variable information along with the instance information for completed BPEL processes.
In 10.1.3.3 or later, this behaviour changed for performance reasons so that the default behaviour is now, not to keep any global variables for a BPEL process once the BPEL process has completed.
You can configure this behaviour on a process level basis by using the parameter keepGlobalVariables in the bpel.xml file for the specific process:
<BPELSuitcase>
<BPELProcess src=".........." id="...........">
<configurations>
<property name="keepGlobalVariables">true</property>
</configurations>
</BPELProcess>
</BPELSuitcase>
Thanks
saptarishi
Maybe you are looking for
-
Hi Experts Can you please tell me how we can calculate tax for assets while doing depreciation. what are the month-end & year-end activities in asset accounting. what is the use of assigning cost center in AA.
-
Is it possible to identify the user?
Hi, I know that I can check identity.name to see who the user is. But it seems that this property is only available during console, batch, menu and app initialization events. I have a date that is supposed to auto fill if it is blank. I want it to wo
-
I'm new to having a mac so if anyone could help me out that'd be great. Is there anything different with plug ins for the internet when it comes to mac? so confused
-
Check form allignment issue during printing
I have copied and modified the standard check printing SAP Script F110_PRINT_CHCK to create my own custom SAP Script ZFHR_PRINT_CHCK SAP Script. This new Z-script also prints the check and along with that in the main window it calls the remuneration
-
8130: CREATE ACTIVE STANDBY PAIR must only be run on one of the MASTER node
CkptFrequency=600 CkptLogVolume=128 OracleNetServiceName=abmsrv1 PassThrough=1 plz give me some help~~thx 帖子经 user11036969编辑过