Problem when calling a method
hello,
I have a problem when Im trying to call the make method that in the Tree class.
Im calling it from the main method like you can see and It writes:
-Cannot make a static reference to the non-static method make() from the type Tree.
Can anyone help me please and tell me what is the problem?
Im using Eclipse 3.1.2
Thank you.
//import java.lang.Object;
//import java.lang.reflect.Array;
//structure of the node
class mainClass extends Tree {
public static void main(String args[]){
Tree.make();
//char temporary[]=new char[9];
//Tic_Tac_Toe pointersToNodes[]=new Tic_Tac_Toe[9];
//for(j=0;j<9;j++)
//temporary[j]='b';
public class Tic_Tac_Toe {
char currentCaseVector[]=new char[9];
Tic_Tac_Toe PointersToNodes[]=new Tic_Tac_Toe[9];
int evaluation;
//class that builds the game tree
class Tree {
public Tic_Tac_Toe T1=new Tic_Tac_Toe();
//char currentCaseVector[]=new char[9];
public char currentSign;
Tree(){
resetCurrentCaseArray(T1);
//T1.currentCaseVector.setSize(9);
//System.out.println(T1.currentCaseVector.elementAt(2));
void make(){
Tic_Tac_Toe T = new Tic_Tac_Toe();
int howMuchCloser,i;
Tree tree=new Tree();
for(i=0;i<9;i++)
T.currentCaseVector='b';
howMuchCloser=1;
for(i=0;i<9;i++){
T.PointersToNodes[findAvailablePlaceOnPointersToNodes(T)]=tree.buildNewTree(1,'o',T.currentCaseVector,howMuchCloser);
howMuchCloser++;
Tic_Tac_Toe buildNewTree(int i,char currentSign,char temp[],int howMuchCloser)throws ArrayIndexOutOfBoundsException{
int j=0;
//int howMuchCloser=1;
//for(j=i;j<9;j++){
Tic_Tac_Toe T1=new Tic_Tac_Toe();
currentSign=changeSign(currentSign);
resetCurrentCaseArray(T1);
//try{
setBoard(T1.currentCaseVector,temp,howMuchCloser,currentSign);
//catch(ArrayIndexOutOfBoundsException e){
//System.out.print("ArrayIndexOutOfBoundsException");
//System.out.println(i);
printTest(T1);
temp=T1.currentCaseVector;
howMuchCloser=1;
if((isFull(T1.currentCaseVector))==true)
return T1;
if(checkWin(T1)){
return T1;
//printTest(T1);
//break;
for(j=i;j<9;j++){
T1.PointersToNodes[findAvailablePlaceOnPointersToNodes(T1)]=buildNewTree(i+1,currentSign,temp,howMuchCloser);
howMuchCloser++;
//if(checkIfBlankEqualOne(T1.currentCaseVector)==false)
//howMuchCloser++;
//T1.PointersToNodes[findAvailablePlaceOnPointersToNodes(T1)]=buildNewTree(i+1,currentSign,temp);
return T1;
int findCloser(char charArray[],int howMuchCloser){
int i;
for(i=0;i<9;i++){
if (charArray[i]=='b'){
howMuchCloser--;
else
continue;
if (howMuchCloser==0)
break;
return i;
void setBoard(char current[],char previous[],int howMuchCloser,char iksOrCircle){
int i;
for(i=0;i<9;i++){
current[i]=previous[i];/******/
current[findCloser(current,howMuchCloser)]=iksOrCircle;
char changeSign(char sign){
if(sign=='x')
return 'o';
else
return 'x';
boolean isFull(char array[]){
int i;
for(i=0;i<9;i++){
if(array[i]=='b'){
return false;
return true;
void resetCurrentCaseArray(Tic_Tac_Toe T1){
for(int i=0;i<9;i++)
T1.currentCaseVector[i]='b';
boolean checkWin(Tic_Tac_Toe T1){
int count1=0;
int count2=0;
//checking columns
int i,j;
for(i=0;i<3;i++){
for(j=i;j<(i+7);j+=3){
if(T1.currentCaseVector[j]=='x')
count1++;
if(T1.currentCaseVector[j]=='o')
count2++;
if(count1==3)
return true;
if(count2==3)
return true;
count1=0;
count2=0;
//checking rows
for(i=0;i<7;i+=3){
for(j=i;j<(i+3);j++){
if(T1.currentCaseVector[j]=='x')
count1++;
if(T1.currentCaseVector[j]=='o')
count2++;
if(count1==3)
return true;
if(count2==3)
return true;
count1=0;
count2=0;
//checking diagonal
for(i=0;i<9;i+=4){
if(T1.currentCaseVector[i]=='x')
count1++;
if(T1.currentCaseVector[i]=='o')
count2++;
if(count1==3)
return true;
if(count2==3)
return true;
count1=0;
count2=0;
for(i=2;i<7;i+=2){
if(T1.currentCaseVector[i]=='x')
count1++;
if(T1.currentCaseVector[i]=='o')
count2++;
if(count1==3)
return true;
if(count2==3)
return true;
return false;
public int findAvailablePlaceOnPointersToNodes(Tic_Tac_Toe tic_tac_toe){
int i;
for(i=0;i<9;i++)
if(tic_tac_toe.PointersToNodes[i]==null)
return i;
return -1;
void printTest(Tic_Tac_Toe T1){
for(int i=0;i<9;i++)
System.out.println(T1.currentCaseVector[i]);
boolean checkIfBlankEqualOne(char array[]){
for(int i=0;i<9;i++){
if(i<8)
if(array[i]=='b')
return false;
if(array[8]=='b')
return true;
return false;
/*void makeFirst(char temporary[]){
for(int i=0;i<9;i++)
temporary[i]='b';
I have two things in mind:
1. either modify the make() in class Tree as static
static void make() {//caution u may have to worry about instance variables referenced under this method2.
under your main static method, invoke it like this instead
mainClass mc=new mainClass();
mc.make();//not Tree.make();
Similar Messages
-
NoSuchMethodError when call JPublisher method
Im getting a java.lang.NoSuchMethod error when calling a method within
a Java class generated by JPublisher.Hi Larry,
thanks for the answer:
DB Version is:
select * from v$version:
SQL> select * from v$version;
BANNER
Oracle9i Enterprise Edition Release 9.0.1.4.0 - 64bit Production
PL/SQL Release 9.0.1.4.0 - Production
CORE 9.0.1.2.0 Production
TNS for IBM/AIX RISC System/6000: Version 9.0.1.4.0 - Production
NLSRTL Version 9.0.1.4.0 - Production
Is there a possibility to get out if intermedia is installed? I really think it is because the methods work. I can process the image - the problem is that somehow a error occurs but the the method worked. The image written to the filesystem has the correct values.
describe ordsys.ordimage leads to the expected output:
SQL> describe ordsys.ordimage;
Element Type
SOURCE ORDSYS.ORDSOURCE
HEIGHT INTEGER
WIDTH INTEGER
CONTENTLENGTH INTEGER
FILEFORMAT VARCHAR2(4000)
CONTENTFORMAT VARCHAR2(4000)
COMPRESSIONFORMAT VARCHAR2(4000)
MIMETYPE VARCHAR2(4000)
INIT FUNCTION
COPY PROCEDURE
PROCESS PROCEDURE
PROCESSCOPY PROCEDURE
SETPROPERTIES PROCEDURE
CHECKPROPERTIES FUNCTION
GETHEIGHT FUNCTION
GETWIDTH FUNCTION
GETFILEFORMAT FUNCTION
GETCONTENTFORMAT FUNCTION
GETCOMPRESSIONFORMAT FUNCTION
SETLOCAL PROCEDURE
CLEARLOCAL PROCEDURE
ISLOCAL FUNCTION
GETUPDATETIME FUNCTION
SETUPDATETIME PROCEDURE
GETMIMETYPE FUNCTION
SETMIMETYPE PROCEDURE
GETCONTENTLENGTH FUNCTION
GETCONTENT FUNCTION
GETBFILE FUNCTION
DELETECONTENT PROCEDURE
SETSOURCE PROCEDURE
GETSOURCE FUNCTION
GETSOURCETYPE FUNCTION
GETSOURCELOCATION FUNCTION
GETSOURCENAME FUNCTION
IMPORT PROCEDURE
IMPORTFROM PROCEDURE
EXPORT PROCEDURE
PROCESSSOURCECOMMAND FUNCTION
OPENSOURCE FUNCTION
CLOSESOURCE FUNCTION
TRIMSOURCE FUNCTION
READFROMSOURCE PROCEDURE
WRITETOSOURCE PROCEDURE
MIGRATEFROMORDIMGB PROCEDURE
MIGRATEFROMORDIMGF PROCEDURE
GETPROPERTIES PROCEDURE
I do not want to use a database link. everything is stored in that one database. I really have no clue why plsql thinks I want to.
Regards,
Markus -
I've created a bunch of custom realms and for a specific user logon (form based "uname" and "pword"), the system knows exactly which custom realm to look up against. However, in using ServletAuthentication class, one can only specify realm name in strong(req, res, realmName), not the weak() method. Any clue?
-johnHi John,
Did you find the answer to this question? I'm having a similar problem when calling the ServletAuthentication.assertIdentity() method.
Cheers,
Vidar -
11g preview version 3: JNDI Lookup problem when calling PL/SQL webservice
Hi,
I am experiencing a problem when calling a PL/SQL Webservice from a BPEL flow.
When I am trying to test my BPEL flow from the SOA Console I get a "Error doing JNDI lookup on target jdbc/MyDBDS"
The composite application including the BPEL flow is deployed in one application. "CompositeApp" and the web service in another Application called
"WebServiceApp".
Both applications are deployed on the same built in OC4J Application Server
If I test the webservice in isolation from the SOA console it works. It also seems to be working if the webservice and the and the BPEL flow is in the same project.
If anyone has any ideas on this one I would be very greatful.
Thanks in advancetry creating the MyDBDS connection as an application resource in both applications.
-
Revision: 4741
Author: [email protected]
Date: 2009-01-29 13:43:53 -0800 (Thu, 29 Jan 2009)
Log Message:
Fix to RTE problem when calling captureEndValues() without having first called captureStartValues(). outcome of a patch submission, although this fix is different than the one suggested in the patch.
QE Notes: None
Doc Notes: None
Bugs: patch sdk-17060, bug sdk-16452
Reviewer: Jason
tests: checkintests, Mustella: tests/Effects tests/ListDataEffects
Ticket Links:
http://bugs.adobe.com/jira/browse/sdk-17060
http://bugs.adobe.com/jira/browse/sdk-16452
Modified Paths:
flex/sdk/branches/3.x/frameworks/projects/framework/src/mx/effects/Effect.asLook for the "contact us" on the verizon pages. http://www22.verizon.com/content/contactus/
Almost all of the forums here are peer to peer. Some verizon admins will occasionaly step in and try to get you help. These admins are usually not able to solve problems for you themselves, but can sometimes give advise or get you in contact with someone who can. -
Browser Dependency when calling a method in backing bean using a javasript.
Hi all,
I have a problem which may look simple but bugging me for quite some time.
The problem is : When I call a method in the backing bean using a Javascript, (the method can alternatively be invoked by clicking on a command link) I am facing an exception (stack printed below).
The strange part is that...I am getting this exception only when I use Internet Explorer. It works absolutely fine when I use Mozilla or Netscape browsers. Also, even in ie, it is working fine when I click on the link directly. The probem comes only when I invoke the action using a javascript.
WARN [lifecycle] executePhase(RENDER_RESPONSE 6,com.sun.faces.cont
ext.FacesContextImpl@16ce9df) threw exception
javax.faces.FacesException
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java
:135)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.ja
va:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssoci
ationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:
84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnecti
onValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http
11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: ClientAbortException: java.net.SocketException: Connection reset by
peer: socket write error
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:
358)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:434)
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:309)
at org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:288)
at org.apache.catalina.connector.Response.flushBuffer(Response.java:542)
at org.apache.catalina.connector.ResponseFacade.flushBuffer(ResponseFacade.java
:279)
at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:20
2)
at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java
:101)
at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:
222)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java
:106)
... 24 more
Caused by: java.net.SocketException: Connection reset by peer: socket write erro
r
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWri
te(InternalOutputBuffer.java:764)
at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFi
lter.java:124)
at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.j
ava:570)
at org.apache.coyote.Response.doWrite(Response.java:560)
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:
353)
... 33 more
13:54:42,805 ERROR [STDERR] ClientAbortException: java.net.SocketException: Con
nection reset by peer: socket write error
13:54:42,805 ERROR [STDERR] at org.apache.catalina.connector.OutputBuffer.realW
riteBytes(OutputBuffer.java:358)
13:54:42,805 ERROR [STDERR] at org.apache.tomcat.util.buf.ByteChunk.flushBuffer
(ByteChunk.java:434)
13:54:42,805 ERROR [STDERR] at org.apache.catalina.connector.OutputBuffer.doFlu
sh(OutputBuffer.java:309)
13:54:42,805 ERROR [STDERR] at org.apache.catalina.connector.OutputBuffer.flush
(OutputBuffer.java:288)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.connector.Response.flushBuff
er(Response.java:542)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.connector.ResponseFacade.flu
shBuffer(ResponseFacade.java:279)
13:54:42,820 ERROR [STDERR] at com.sun.faces.application.ViewHandlerImpl.render
View(ViewHandlerImpl.java:202)
13:54:42,820 ERROR [STDERR] at org.ajax4jsf.framework.ViewHandlerWrapper.render
View(ViewHandlerWrapper.java:101)
13:54:42,820 ERROR [STDERR] at org.ajax4jsf.framework.ajax.AjaxViewHandler.rend
erView(AjaxViewHandler.java:222)
13:54:42,820 ERROR [STDERR] at com.sun.faces.lifecycle.RenderResponsePhase.exec
ute(RenderResponsePhase.java:106)
13:54:42,820 ERROR [STDERR] at com.sun.faces.lifecycle.LifecycleImpl.phase(Life
cycleImpl.java:251)
13:54:42,820 ERROR [STDERR] at com.sun.faces.lifecycle.LifecycleImpl.render(Lif
ecycleImpl.java:144)
13:54:42,820 ERROR [STDERR] at javax.faces.webapp.FacesServlet.service(FacesSer
vlet.java:245)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:290)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
doFilter(ApplicationFilterChain.java:206)
13:54:42,820 ERROR [STDERR] at com.hds.vc.common.infrastructure.AIMFilter.doFil
ter(AIMFilter.java:27)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:235)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
doFilter(ApplicationFilterChain.java:206)
13:54:42,820 ERROR [STDERR] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.d
oFilter(ReplyHeaderFilter.java:96)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
internalDoFilter(ApplicationFilterChain.java:235)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.ApplicationFilterChain.
doFilter(ApplicationFilterChain.java:206)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.StandardWrapperValve.in
voke(StandardWrapperValve.java:230)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.StandardContextValve.in
voke(StandardContextValve.java:175)
13:54:42,820 ERROR [STDERR] at org.jboss.web.tomcat.security.SecurityAssociatio
nValve.invoke(SecurityAssociationValve.java:179)
13:54:42,820 ERROR [STDERR] at org.jboss.web.tomcat.security.JaccContextValve.i
nvoke(JaccContextValve.java:84)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.StandardHostValve.invok
e(StandardHostValve.java:128)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.valves.ErrorReportValve.invo
ke(ErrorReportValve.java:104)
13:54:42,820 ERROR [STDERR] at org.jboss.web.tomcat.service.jca.CachedConnectio
nValve.invoke(CachedConnectionValve.java:156)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.core.StandardEngineValve.inv
oke(StandardEngineValve.java:109)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.connector.CoyoteAdapter.serv
ice(CoyoteAdapter.java:241)
13:54:42,820 ERROR [STDERR] at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:844)
13:54:42,820 ERROR [STDERR] at org.apache.coyote.http11.Http11Protocol$Http11Co
nnectionHandler.process(Http11Protocol.java:580)
13:54:42,820 ERROR [STDERR] at org.apache.tomcat.util.net.JIoEndpoint$Worker.ru
n(JIoEndpoint.java:447)
13:54:42,820 ERROR [STDERR] at java.lang.Thread.run(Unknown Source)
13:54:42,820 ERROR [STDERR] Caused by: java.net.SocketException: Connection rese
t by peer: socket write error
13:54:42,820 ERROR [STDERR] at java.net.SocketOutputStream.socketWrite0(Native
Method)
13:54:42,820 ERROR [STDERR] at java.net.SocketOutputStream.socketWrite(Unknown
Source)
13:54:42,820 ERROR [STDERR] at java.net.SocketOutputStream.write(Unknown Source
13:54:42,820 ERROR [STDERR] at org.apache.coyote.http11.InternalOutputBuffer$Ou
tputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:764)
13:54:42,820 ERROR [STDERR] at org.apache.coyote.http11.filters.ChunkedOutputFi
lter.doWrite(ChunkedOutputFilter.java:124)
13:54:42,820 ERROR [STDERR] at org.apache.coyote.http11.InternalOutputBuffer.do
Write(InternalOutputBuffer.java:570)
13:54:42,820 ERROR [STDERR] at org.apache.coyote.Response.doWrite(Response.java
:560)
13:54:42,820 ERROR [STDERR] at org.apache.catalina.connector.OutputBuffer.realW
riteBytes(OutputBuffer.java:353)
13:54:42,820 ERROR [STDERR] ... 33 more
Please throw some light on this issue.This is the Java script I am using
function submitForm(e){
var characterCode
if(e && e.which){
e = e
characterCode = e.which
}else{
e = event characterCode = e.keyCode
if (characterCode== 13){
document.getElementById('mainform:submitForm:search').onclick();
Regards,
Jagadeesh
Edited by: Jagadeesh.Pala on Oct 1, 2007 3:59 AM -
JTextField update problem when called from PropertyChangeEvent
Hi,
I'm trying to create forms that can be dynamically loaded with Class.forname(formName).
Those forms should always inherit some methods that make it easy to pass data to
them and receive data from them. The idea is that the data comes from a table which
sends a hashmap (String column/JTextField-name + String Value pairs) with firePropertyChanged
as soon as a new row is seleceted. The JTextFields in the form are marked with setName("FieldName") that has to correspond to the name of the columns of the table.
My problem is that I can't update the fields in my form when I'm calling getRow(HashMap)
from within propertyChangeEvent but that's necessary to keep the forms flexible.
JTextFieldName.setText(newText) just won't work. But it works when I call getRow(HashMap)
from the constructor. SwingWorker and threads to update the form didn't help.
I don't need to call pack() / update() / repaint() on the JFrame, do I ??
update() / validate() / repaint() etc. didn't work on the JTextField themselves.
Below is the code for one of the test-forms (just a JPanel that is inserted in a frame)
with all of it's methods. Does anybody have a solution to this problem ??
Thanks for taking time for that !!
Benjamin
* testTable.java
* Created on 15. April 2004, 16:12
package viewcontrol.GUI;
* @author gerbarmb
import javax.swing.*;
import java.awt.*;
import java.beans.*;
import java.util.*;
public class testTable extends javax.swing.JPanel
implements
java.awt.event.KeyListener,
java.beans.PropertyChangeListener {
* public static void main(String[] argv) { testTable tt = new testTable();
* JFrame jf = new JFrame(); jf.setContentPane(tt); jf.setVisible(true); }
/** Creates new customizer testTable */
public testTable() {
initComponents();
HashMap hm = new HashMap();
* Only for debugging, to see that the method getRow() works when
* called from the constructor.
hm.put("ttext", "TEst");
this.getRow(hm);
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the FormEditor.
private void initComponents() {//GEN-BEGIN:initComponents
java.awt.GridBagConstraints gridBagConstraints;
jLabel1 = new javax.swing.JLabel();
textIn = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
intIn = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
numIn = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
dateIn = new javax.swing.JTextField();
jLabel5 = new javax.swing.JLabel();
dateTimeIn = new javax.swing.JTextField();
jLabel6 = new javax.swing.JLabel();
jCheckBox1 = new javax.swing.JCheckBox();
keepValues = new javax.swing.JCheckBox();
jButton1 = new javax.swing.JButton();
setLayout(new java.awt.GridBagLayout());
jLabel1.setText("Text");
add(jLabel1, new java.awt.GridBagConstraints());
textIn.setName("ttext");
textIn.setPreferredSize(new java.awt.Dimension(100, 21));
textIn.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
textInActionPerformed(evt);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridwidth = 2;
add(textIn, gridBagConstraints);
jLabel2.setText("Integer");
add(jLabel2, new java.awt.GridBagConstraints());
intIn.setName("tint");
intIn.setPreferredSize(new java.awt.Dimension(50, 21));
add(intIn, new java.awt.GridBagConstraints());
jLabel3.setText("Number");
add(jLabel3, new java.awt.GridBagConstraints());
numIn.setName("tnum");
numIn.setPreferredSize(new java.awt.Dimension(50, 21));
add(numIn, new java.awt.GridBagConstraints());
jLabel4.setText("Date");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 0;
gridBagConstraints.gridy = 1;
add(jLabel4, gridBagConstraints);
dateIn.setName("tdate");
dateIn.setPreferredSize(new java.awt.Dimension(50, 21));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 1;
gridBagConstraints.gridy = 1;
add(dateIn, gridBagConstraints);
jLabel5.setText("DateTime");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 2;
gridBagConstraints.gridy = 1;
add(jLabel5, gridBagConstraints);
dateTimeIn.setName("tidate");
dateTimeIn.setPreferredSize(new java.awt.Dimension(80, 21));
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridy = 1;
add(dateTimeIn, gridBagConstraints);
jLabel6.setText("Bit");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridy = 1;
add(jLabel6, gridBagConstraints);
jCheckBox1.setName("tbit");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridy = 1;
add(jCheckBox1, gridBagConstraints);
keepValues.setText("keep values");
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 7;
gridBagConstraints.gridy = 3;
add(keepValues, gridBagConstraints);
jButton1.setText("Send");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
gridBagConstraints = new java.awt.GridBagConstraints();
gridBagConstraints.gridx = 7;
gridBagConstraints.gridy = 2;
add(jButton1, gridBagConstraints);
}//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
sendRow();
}//GEN-LAST:event_jButton1ActionPerformed
private boolean sendRow() {
java.util.HashMap hm = new java.util.HashMap();
Component[] cs = this.getComponents();
for (int i = 0; i < cs.length; i++) {
if (((Component) cs).getName() != null) {
if (cs[i] instanceof JCheckBox) {
String value = ((JCheckBox) cs[i]).isSelected() ? "1" : "0";
hm.put(cs[i].getName(), value);
} else if (cs[i] instanceof JCheckBox) {
hm.put(cs[i].getName(), ((JTextField) cs[i]).getText());
} // end for
firePropertyChange("rowChanged", null, hm);
return true;
private void getRow(java.util.HashMap hm) {
//if (! this.keepValues.isSelected()) {
Component[] cs = this.getComponents();
for (int i = 0; i < cs.length; i++) {
if (cs[i].getName() != null && hm.containsKey(cs[i].getName())) {
Component component = cs[i];
String componentName = cs[i].getName();
String componentValue = (String) hm.get(component.getName());
if (cs[i] instanceof JTextField) {
// output for debugging
System.out.println("Setting " + cs[i].getName() + " = "
+ componentValue);
((JTextField) component).setText(componentValue);
} else if (cs[i] instanceof JCheckBox) {
// output for debugging
System.out.println("JCheckBox found");
JCheckBox cb = (JCheckBox) component;
boolean selected = (componentValue == null ? false : (componentValue.equals("1")
? true
: false));
((JCheckBox) component).setSelected(selected);
} // end for
/* Uncomment this code snippet to retrieve the text that has been set
for the components (that means JTextFields)
This is just for debugging !
Component[] cs = this.getComponents(); for (int i = 0; i < cs.length;
i++) { if (cs[i].getName() != null) { if (cs[i] instanceof
JTextField) { System.out.println("Value of " +cs[i].getName() + " = " +
((JTextField) cs[i]).getText()); } } } // end for
private void textInActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_textInActionPerformed
}//GEN-LAST:event_textInActionPerformed
public void keyPressed(java.awt.event.KeyEvent e) {
if (e.getKeyCode() == java.awt.event.KeyEvent.VK_ENTER) {
sendRow();
public void keyReleased(java.awt.event.KeyEvent e) {
public void keyTyped(java.awt.event.KeyEvent e) {
public void propertyChange(java.beans.PropertyChangeEvent evt) {
if (evt.getPropertyName().equals("newRow")) {
final PropertyChangeEvent finalEvt = evt;
Runnable makeChanges = new Runnable () {
public void run() {
getRow((java.util.HashMap) finalEvt.getNewValue());
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JTextField dateIn;
private javax.swing.JTextField dateTimeIn;
private javax.swing.JTextField intIn;
private javax.swing.JButton jButton1;
private javax.swing.JCheckBox jCheckBox1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JCheckBox keepValues;
private javax.swing.JTextField numIn;
private javax.swing.JTextField textIn;
// End of variables declaration//GEN-END:variablesThe problem of the change in the form not being comitted is that
I forgot SwingUtilities.invokeLater(makeChanges); in the bottom
part in public void propertyChange(java.beans.PropertyChangeEvent evt)
after having created a new Runnable.
Changes to the UI often have to be comitted by SwingUtitlities.invokeLater()
though I don't know that much about Swing yet.
Thanks to everybody who tried to solve that problem.
Benjamin -
Problem with calling onApplicationStart() method
Hi all,
I have a problem with calling application.cfc's methods from coldfusion template. The problem is like when i am calling "onapplicationstart" method inside a cfml template i getting the error shown below
The onApplicationStart method was not found.
Either there are no methods with the specified method name and argument types or the onApplicationStart method is overloaded with argument types that ColdFusion cannot decipher reliably. ColdFusion found 0 methods that match the provided arguments. If this is a Java object and you verified that the method exists, use the javacast function to reduce ambiguity.
My code is like below.
Application.cfc
<cfcomponent hint="control application" output="false">
<cfscript>
this.name="startest";
this.applicationtimeout = createtimespan(0,2,0,0);
this.sessionmanagement = True;
this.sessionTimeout = createtimespan(0,0,5,0);
</cfscript>
<cffunction name="onApplicationStart" returnType="boolean">
<cfset application.myvar = "saurav">
<cfset application.newvar ="saurav2">
<cfreturn true>
</cffunction>
</cfcomponent>
testpage.cfm
<cfset variables.onApplicationStart()>
I have tried to call the above method in different way also like
1--- <cfset onApplicationStart()>
i got error like this
Variable ONAPPLICATIONSTART is undefined.
2---<cfset Application.onApplicationStart()>
The onApplicationStart method was not found.
Either there are no methods with the specified method name and argument types or the onApplicationStart method is overloaded with argument types that ColdFusion cannot decipher reliably. ColdFusion found 0 methods that match the provided arguments. If this is a Java object and you verified that the method exists, use the javacast function to reduce ambiguity
Please help me out.
Thanks
SauravYou can't just call methods in a CFC without a reference to that CFC. This includes methods in Application.cfc.
What are you trying to do, exactly, anyway? You'd probably be better served by placing a call to onApplicationStart within onRequestStart in Application.cfc, if your goal is to refresh the application based on some condition:
<cffunction name="onRequestStart">
<cfif someCondition>
<cfset onApplicationStart()>
</cfif>
</cffunction>
Dave Watts, CTO, Fig Leaf Software
http://www.figleaf.com/
http://training.figleaf.com/ -
JAX-WS client error when calling web method
My JAX-WS client is getting the following error when calling a web method:
Exception in thread "main" javax.xml.ws.WebServiceException:
No Content-type in the header!
I'm using Eclipse as my development environment. I use the CXF facet to generate a WSDL from Java code. I then use the New -> Web Service Client to generate client side code from the WSDL.
The following fully describes my environment:
Windows XP
JDK 1.6.0_22
Java EE 6
Eclipse Helios
Apache CXF 2.3.0 (runtime)
Tomcat 6.0
I have found several post on the net that describe this problem and a solution for JBoss, but I have been unable to find anything that addresses this error on Tomcat.
I can provide source code if needed. The app is a simple Hello World web service. I'm using it to try and get familiar with developing web services with all the components listed above.
ThanksHi Anders,
The resolution of the crossdomain problem is not to store an cross-domain-policy file at the [SAP] webservice side; but instead it needs to be done at the (every...) webservice client. In case the client is an IIS based webapplication (and thus the ultimate end-users are accessing it via their browser), this is not such an issue. It there is sufficient to put an crossdomain.xml policy file in the IIS main virtual root of your 'client' .net webapplication (c:\inetpub\wwwroot). It also can be required or at least helpful to put a clientaccesspolicy.xml file; both at the main virtual root and in the virtual root of the specific webapplication
In case of SharePoint application, the crossdomain.xml file must be stored in the WSS virtual root of that site; c:\inetpub\wwwroot\wss\virtualdirectories\<your SharePoint webapp>
Best regards, William. -
Permission Denied when calling a method from VB using WebLogic 8.1.2 JCOM
Hi,
We are calling an java/ejb methods from VB using WebLogic JCOM 8.1 SP2. But
using JCOM, we are getting a error Permission denied when called from VB. We think
that we should update pathch jintegra 2.0 or 2.1 in WebLogic 8.1.2 the to solve
this issue, because we faced the same problen "permission denied" when we used
JINTEGRA(third party software). Once we installed the JINTEGRA 2.1 it solved the
issue.
So, can anyone help on regard to this issue of "Permission denied" in WebLogic
JCOM 8.1 SP2.
Thanks & Regards
RaghuI too am experiencing the jCOM error: "Run-time error '70': Permission Denied". The problem appears to be related to a Microsoft Security Patch KB835732 (MS04-011 which, as you indicated, has been fixed in J-Integra v2.1 (FYI, jCOM 8.1 is based on J-Integra 1.5.4, see J-Integra/jCOM versions.
Did you ever get a resolution concerning 8.1 SP2? 8.1 SP3 is available now but I don't see any mention of jCOM updates in the WebLogic 8.1 What's New documention. I can't immediately upgrade (trying to stay on same version as a few other developers I work with) but I am hoping it is resolved in SP3. -
XML Deserialization Error when calling WebService-method
Hi all,
when calling a WebService-method from my WebDynpro-application, I get the following error message:
"Deserializing fails. Nested message: XML Deserialization Error. Can not create instance of class [com.karmann.ApplMan.dto.SoftwareKomponenteDTO] when deserializing XML type [urn:com.karmann.ApplMan.dto][SoftwareKomponenteDTO].."
SoftwareKomponenteDTO is a class that I have implemented. It implements Serializable and overwrites the methods "equals()" and "hashcode()". It contains members of types long, String and java.sql.Date.
The method I call needs an argument of type SoftwareKomponenteDTO. Other methods which return something of type SoftwareKomponenteDTO do not make any problems.
The same error message appears when I test the WebService-method in the WebService-navigator. So I assume that the problem is not the way I call the method from WebDynpro.
Thanks for help,
ChristophHi all,
I found what my problem was. The complex type that I deliver to my method (i.e. SoftwareKomponenteDTO) must have a public constructor without parameters. I think that this is slightly confusing, because in the other direction (method delivers complex type as return value) this is not neccessary. Anyway, my problem's solved now.
Regards,
Christoph -
Getting Bad Type Error when calling a method in the proxy class
Hi,
I have generated the proxy classes from wsdl.
When I am calling the methods in the proxy class from one of external class, I am getting following error.
Can anyone please help me in resolving this issue.
javax.xml.ws.soap.SOAPFaultException: org.xml.sax.SAXException: Bad types (interface javax.xml.soap.SOAPElement -> class com.intraware.snetmgr.webservice.data.SubscribeNetObjectReference) Message being parsed:
at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:197)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:122)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:125)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:136)
at $Proxy176.find(Unknown Source)
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 weblogic.wsee.jaxws.spi.ClientInstanceInvocationHandler.invoke(ClientInstanceInvocationHandler.java:84)
at $Proxy173.find(Unknown Source)
at com.xxx.fs.FNServices.findAccountWs(FNServices.java:132)
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 weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:92)
at weblogic.wsee.jaxws.WLSInstanceResolver$WLSInvoker.invoke(WLSInstanceResolver.java:74)
at com.sun.xml.ws.server.InvokerTube$2.invoke(InvokerTube.java:151)
at com.sun.xml.ws.server.sei.EndpointMethodHandlerImpl.invoke(EndpointMethodHandlerImpl.java:268)
at com.sun.xml.ws.server.sei.SEIInvokerTube.processRequest(SEIInvokerTube.java:100)
at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:866)
at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:815)
at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:778)
at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:680)
at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:403)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:532)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:253)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:140)
at weblogic.wsee.jaxws.WLSServletAdapter.handle(WLSServletAdapter.java:171)
at weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:708)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
at weblogic.wsee.util.ServerSecurityHelper.authenticatedInvoke(ServerSecurityHelper.java:103)
at weblogic.wsee.jaxws.HttpServletAdapter$3.run(HttpServletAdapter.java:311)
at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:336)
at weblogic.wsee.jaxws.JAXWSServlet.doRequest(JAXWSServlet.java:95)
at weblogic.servlet.http.AbstractAsyncServlet.service(AbstractAsyncServlet.java:99)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
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 oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
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:136)
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)
Thanks
AnoopHi Vlad,
The service has not been changed since i have generated the proxy.
I tried calling the service from soapUI and I am getting the following error now.
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:uri="uri:webservice.subscribenet.intraware.com" xmlns:uri1="uri:subscribenet.intraware.com">
<soapenv:Header>
<uri:SessionHeader>
<uri:SessionID>hjkashd9sd90809dskjkds090dsj</uri:SessionID>
</uri:SessionHeader>
</soapenv:Header>
<soapenv:Body>
<uri:Find>
<uri:SubscribeNetObjectReference>
<uri1:ID></uri1:ID>
<uri1:IntrawareID></uri1:IntrawareID>
<uri1:SharePartnerID></uri1:SharePartnerID>
</uri:SubscribeNetObjectReference>
</uri:Find>
</soapenv:Body>
</soapenv:Envelope>
Response:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Header/>
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server.generalException</faultcode>
<faultstring>org.xml.sax.SAXException: WSWS3279E: Error: Unable to create JavaBean of type com.intraware.snetmgr.webservice.data.SubscribeNetObjectReference. Missing default constructor? Error was: java.lang.InstantiationException: com.intraware.snetmgr.webservice.data.SubscribeNetObjectReference. Message being parsed:</faultstring>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
Thanks
Anoop -
Can't add list element when calling a method from another class
I am trying to call a method in another class, which contains code listmodel.addElement("text"); to add an element into a list component made in that class.
I've put in System.out.println("passed"); in the method just to make sure if the method was being called properly and it displays normally.
I can change variables in the other class by calling the method with no problem. The only thing I can't do is get listmodel.addElement("text"); to add a new element in the list component by doing it this way.
I've called that method within it's class and it added the element with no problem. Does Java have limitations about what kind of code it can run from other classes? And if that's the case I'd really like to know just why.There were no errors, just the element doesnt get added to the list by doing it this way
class showpanel extends JPanel implements ActionListener, MouseMotionListener {
framepanel fp = new framepanel();
--omitted--
public void actionPerformed(ActionEvent e){
if(e.getSource() == button1){
fp.addLayer();
/*is in a different class file*/
class framepanel extends JPanel implements ActionListener{
--omitted--
public void addLayer(){
listmodel.addElement("Layer"+numLayer);
numLayer++;
} -
Character conversion problems when calling FM via RFC from Unicode ECC 6.0?
Hi all,
I faced a Cyrillic character convertion problem while calling an RFC function from R/3 ECC 6.0 (initialized as Unicode system - c.p. 4103). My target system is R/3 4.6C with default c.p. 1500.
The parameter I used in my FM interface in target system is of type CHAR10 (single-byte, obviously).
I have defined rfc-connection (SM59) as an ABAP connection and further client/logon language/user/password are supplied.
The problem I faced is, that Cyrillic symbols are transferred as '#' in the target system ('#' is set as default symbol in RFC-destination definition in case character convertion error is met).
Checking convertions between c.p. 4103 and target c.p. 1500 in my source system using tools of transaction i18n shows no errors - means conversion passed O.K. It seems default character conversion executed by source system whithin the scope of RFC-destination definition is doing something wrong.
Further, I played with MDMP & Unicode settings whithin the RFC-destination definition with no successful result - perhaps due to lack of documentation for how to set and manage these parameters.
The question is: have someone any experience with any conversion between Unicode and non-Unicide systems via RFC-call (non-English target obligatory !!!), or can anyone share valuable information regarding this issue - what should be managed in the RFC-destination in order to get character conversion working? Is it acceptable to use any character parameter in the target function module interface at all?
Many thanks in advance.
Regards,
Ivaylo Mutafchiev
Senior SAP ABAP Consultanthey,
I had a similar experience. I was interfacing between 4.6 (RFC), PI and ECC 6.0 (ABAP Proxy). When data was passed from ECC to 4.6, RFC received them incorrectly. So i had to send trimmed strings from ECC and receive them as strings in RFC (esp for CURR and QUAN fields). Also the receiver communication channel in PI (between PI and RFC) had to be set as Non unicode. This helped a bit. But still I am getting 2 issues, truncation of values and some additional digits !! But the above changes resolved unwanted characters problem like "<" and "#". You can find a related post in my id. Hope this info helps.. -
Problem when calling a return type BOOLEAN SQL Function in a package
Hi All,
I am having problem when trying to call a SQL function in a package with return type BOOLEAN
The SQL function signature is as follows
CREATE OR REPLACE PACKAGE RMSOWNER.ORDER_ATTRIB_SQL ****
FUNCTION GET_PO_TYPE_DESC(O_error_message IN OUT VARCHAR2,
I_PO_TYPE IN VARCHAR2,
O_PO_TYPE_DESC IN OUT VARCHAR2)
RETURN BOOLEAN;
Following is my java code
+CallableStatement cs3 = conn.prepareCall("{?=call ORDER_ATTRIB_SQL.GET_PO_TYPE_DESC(?,?,?)}");+
+cs3.registerOutParameter(1, java.sql.Types.BOOLEAN);+
+cs3.registerOutParameter(2, java.sql.Types.VARCHAR);+
+cs3.registerOutParameter(4, java.sql.Types.VARCHAR);+
+cs3.setString(2, "");+
+cs3.setString(3, "ST");+
+cs3.setString(4, "");+
+ResultSet rs3 = cs3.executeQuery();+
I get the following exception, i tried changing the sql type(registerOutParameter) from boolean to bit but i still getting this exception.
But when i call any other functions with return type other than boolean they work perfectly fine.
Please can anyone help me fix this issue, i am not sure if its anything to do with vendor JDBC classes?
+java.sql.SQLException: ORA-06550: line 1, column 13:+
+PLS-00382: expression is of wrong type+
+ORA-06550: line 1, column 7:+
+PL/SQL: Statement ignored+
+ at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)+
+ at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)+
+ at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)+
+ at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)+
+ at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:215)+
+ at oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:954)+
+ at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)+
+ at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)+
+ at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3422)+
+ at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4394)+
#####Hello People!
There is another workaround!!
See the example below:
private String callBooleanAPi(String tableName,String apikey,String dtInicio,String dtFim,String comando) throws SQLException {
CallableStatement cs = null;
String call = "";
String retorno = null;
try {
if(comando.equalsIgnoreCase("INSERT")){
call = "declare x BOOLEAN; y varchar2(2);begin x :=PKG.INSERT(?,?,?,?,?); if x then y := 'S'; else y :='N'; end if; ? := y;end;";
} else if(comando.equalsIgnoreCase("UPDATE")){
call = "declare x BOOLEAN; y varchar2(2);begin x := PKG.UPDATE(?,?,?,?,?); if x then y := 'S'; else y :='N'; end if; ? := y;end;";
} else if(comando.equalsIgnoreCase("DELETE")){
call = "declare x BOOLEAN; y varchar2(2);begin x := PKG.DELETE(?,?,?,?,?); if x then y := 'S'; else y :='N'; end if; ? := y;end;";
cs = conn.prepareCall(call);
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
SimpleDateFormat sdfToSqlDate = new SimpleDateFormat("yyyy-MM-dd");
java.util.Date dataInicialVigencia =null;
java.util.Date dataFinalVigencia = null;
Date dtInicialFormatada =null;
Date dtFinalFormatada = null;
if(dtInicio != null && !dtInicio.equals("")){
dataInicialVigencia = sdf.parse(dtInicio);
dtInicio =sdfToSqlDate.format(dataInicialVigencia);
dtInicialFormatada = Date.valueOf(dtInicio);
if(dtFim != null && !dtFim.equals("")){
dataFinalVigencia = sdf.parse(dtFim);
dtFim =sdfToSqlDate.format(dataFinalVigencia);
dtFinalFormatada = Date.valueOf(dtFim);
cs.setString(1, tableName);
cs.setString(2, apikey);
cs.setDate(3, dtInicialFormatada );
cs.setDate(4, dtFinalFormatada );
cs.registerOutParameter(5, java.sql.Types.VARCHAR);
cs.registerOutParameter(6, java.sql.Types.VARCHAR );
cs.execute();
retorno = cs.getString(6);
System.out.println( cs.getString(5));
} catch(SQLException e){
throw new SQLException("An SQL error ocurred while calling the API COR_VIGENCIA: " + e);
} catch(Exception e){
Debug.logger.error( "Error calculating order: " + id, e );
} finally {
if (cs != null) {
cs.close();
cs = null;
return retorno;
As you can see the CallableStatement class acepts PL/SQl blocks.
Best Regards.
Maybe you are looking for
-
Can I attach pictures to my e-mail on my IPad? If so how?
-
Associating a comm port with a TS test socket
Hello, In order to run several test platforms on one machine (parallel model), I must be able to associate each test socket with a unique serial port. Each hardware platform has it's own serial connection which is built in Labview. So my question is,
-
Hi everybody, does anybody know if it is possible to have a static vpn tunnel to another cisco firewall and using the uc500 as vpn dial in server at the same time? thank you in advance, markus
-
Java for PowerBook G4 on Leopard??
Is there any chance there is a Java JDK (developing kit) for Leopard that still accepts PowerPC's? The new 1.6 versions only installs on Intel macs. I tried a older version but those will only install on OSX Tiger. I'm kinda in between =) Does anyone
-
Hello, I need to edit the source, to be able to change the installed programs name once downloaded on my phone. Now I run the ready .jar, it creates another .jar, the 2nd .jar i just created is sended on my phone, but then its name is MeBoy, no matte