I am struck here!! pls help
I am trying to retrieve the latest xml that is checked in, through java. So I am storing the resource id that is returned by the check in function and using that resource id to get the latest version of the xml using the getresourcebyid function in the xml db.
following is the java code for that:
oracle.sql.RAW b ;
public void checkin() throws SQLException {
String path = "/public/testcase.xml";
cstmt = (OracleCallableStatement) conn.prepareCall (
"BEGIN :1 := dbms_xdb_version.Checkin(:2); commit; end;"
cstmt.setString(2, path);
// register the type of the out param - an Oracle specific type
cstmt.registerOutParameter(1, OracleTypes.RAW);
// execute and retrieve the result set
cstmt.execute();
b = cstmt.getRAW(1);
System.out.println (b);
public void getResourceById() throws SQLException {
cstmt = (OracleCallableStatement) conn.prepareCall (
"BEGIN :1 := dbms_xdb_version.GetResourceByResId (:2); END;"
cstmt.setRAW(2, b);
cstmt.registerOutParameter (1, OracleTypes.OPAQUE);
cstmt.execute();
OPAQUE o = cstmt.getOPAQUE(1);
XMLType poxml = XMLType.createXML(o);
// get the XMLDocument as a string...
Document podoc = (Document)poxml.getDOM();
Element elem = podoc.getDocumentElement();
System.out.println (elem.getTagName());
When I ran I am getting the following error in the java getResourceById() method.
Exception in thread main
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:125)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:316)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:282)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:639)
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:184)
at oracle.jdbc.driver.T4CCallableStatement.execute_for_rows(T4CCallableStatement.java:873)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1086)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2984)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3076)
at oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java:4273)
at xdb.test.getResourceById(test.java:360)
at xdb.test.main(test.java:142)
Process exited with exit code 1.
what is wrong in the getresource method ?
Also is there any other way you can do the same thing in java using select sql statement or something like that?
Your help is appreciated.
Actually on second thoughts invoke getNonSchemaBasedXML() on the xmltype is you must use thin connection..
Here's an example
package com.oracle.st.xmldb.pm.examples;
import com.oracle.st.xmldb.pm.common.baseApp.BaseApplication;
import java.sql.SQLException;
import oracle.jdbc.OraclePreparedStatement;
import oracle.jdbc.OracleResultSet;
import oracle.xdb.XMLType;
public class GetXMLTypeDOM extends BaseApplication
protected String driverType;
protected String getDriver() {
return this.driverType;
public void doSomething(String[] Args) throws Exception
OraclePreparedStatement statement = null;
this.driverType = this.OCI_DRIVER;
this.initializeConnection();
statement = (OraclePreparedStatement) getConnection().prepareStatement("select object_value from PURCHASEORDER_NSB_XMLTYPE where rownum < 2");
getDocument(statement);
statement = (OraclePreparedStatement) getConnection().prepareStatement("select object_value from PURCHASEORDER_SB_XMLTYPE where rownum < 2");
getDocument(statement);
getConnection().close();
this.driverType = this.THIN_DRIVER;
this.initializeConnection();
statement = (OraclePreparedStatement) getConnection().prepareStatement("select object_value from PURCHASEORDER_NSB_XMLTYPE where rownum < 2");
getDocument(statement);
statement = (OraclePreparedStatement) getConnection().prepareStatement("select object_value from PURCHASEORDER_SB_XMLTYPE where rownum < 2");
getDocument(statement);
statement = (OraclePreparedStatement) getConnection().prepareStatement("select x.object_value.createNonSchemaBasedXML() from PURCHASEORDER_SB_XMLTYPE x where rownum < 2");
getDocument(statement);
getConnection().close();
private void getDocument(OraclePreparedStatement statement)
OracleResultSet resultSet = null;
org.w3c.dom.Document doc = null;
XMLType xml = null;
try {
resultSet = (OracleResultSet) statement.executeQuery();
while (resultSet.next())
xml = (XMLType) resultSet.getObject(1);
doc = xml.getDOM();
System.out.println("DOM Implementation is " + doc.getClass().getName());
xml.close();
resultSet.close();
statement.close();
catch (SQLException sqle) {
System.out.println("Caught SQL Exception : " + sqle.getMessage());
public static void main (String[] args)
try
GetXMLTypeDOM example = new GetXMLTypeDOM();
example.doSomething(args);
catch (Exception e)
e.printStackTrace();
}Which generates the following output
C:\TEMP>
C:\Oracle\JDeveloper\jdk\bin\javaw.exe -client -classpath C:\xdb\JDeveloper\Classes;C:\Oracle\product\10.2.0\db_1\jdbc\lib\ojdbc14.jar;C:\Oracle\product\10.2.0\db_1\LIB\xmlparserv2.jar;C:\Oracle\product\10.2.0\db_1\RDBMS\jlib\xdb.jar;C:\xdb\JDeveloper\jakarta-slide-webdavclient-bin-2.1\lib\jakarta-slide-webdavlib-2.1.jar;C:\xdb\JDeveloper\jakarta-slide-webdavclient-bin-2.1\lib\commons-httpclient.jar;C:\xdb\JDeveloper\jakarta-slide-webdavclient-bin-2.1\lib\commons-logging.jar;C:\xdb\JDeveloper\jakarta-slide-webdavclient-bin-2.1\lib\jdom-1.0.jar -Dcom.oracle.st.xmldb.pm.ConnectionParameters=C:\\xdb\\jdeveloper\\SimpleExamples\\LocalConnection.xml -Dhttp.proxyHost=www-proxy.us.oracle.com -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts=192.168.0.77|localhost|192.168.1.1|*.oracle.com|*.us.oracle.com -Dhttps.proxyHost=www-proxy.us.oracle.com -Dhttps.proxyPort=80 -Dhttps.nonProxyHosts=192.168.0.77|localhost|192.168.1.1|*.oracle.com|*.us.oracle.com com.oracle.st.xmldb.pm.examples.GetXMLTypeDOM -mx2048M
ConnectionProvider.establishConnection(): Connecting as SCOTT/TIGER@jdbc:oracle:oci8:@(description=(address=(host=localhost)(protocol=tcp)(port=1521))(connect_data=(service_name=ORA10GR2.xp.mark.drake.oracle.com)(server=DEDICATED)))
ConnectionProvider.establishConnection(): Database Connection Established
DOM Implementation is oracle.xdb.dom.XDBDocument
DOM Implementation is oracle.xdb.dom.XDBDocument
ConnectionProvider.establishConnection(): Connecting as SCOTT/TIGER@jdbc:oracle:thin:@localhost:1521:ORA10GR2
ConnectionProvider.establishConnection(): Database Connection Established
DOM Implementation is oracle.xml.parser.v2.XMLDocument
Caught SQL Exception : Only LOB or String Storage is supported in Thin XMLType
DOM Implementation is oracle.xml.parser.v2.XMLDocument
Process exited with exit code 0.
Similar Messages
-
Can't upgrade my iCloud storage it gives error all time time when I'm trying to do
Can't upgrade my iCloud storage it gives error all time time when I'm trying to do
-
hi everyone hope you can help ive just synced my partners phone because shes due a new one because its damaged,ive plugged the new one in and the only backup points listed are from my phone and not hers,pls help?
You probably won't be able to use a Malaysian sim card in your phone. If you purchased the phone from 3, then it is probably carrier locked to 3 and it won't work with any other sim card.
Nobody here can do anything to help you. You need to contact 3, so you need to ring them or go back to the store where you purchased the phone. Not a lot you can do other than activate with the original 3 sim card in situ so that the phone will work.
You can try activating the phone with the 3 sim card and then try swapping them, but I suspect that the phone is carrier locked to 3 and you need to contact them for help. Noone else can do anything really except them. -
QUERY CLARIFICATION RQD : gurus, experts pls help
Hai,
I am facing problem in performance of the query. sample scenario i have created here pls help me to solve
**VEH_MAIN* TABLE (MASTER TABLE)*
CREATE TABLE VEH_MAIN
( VIP_MOT_IND VARCHAR2(10 BYTE),
VIP_IND NUMBER(10,0)
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT01',1);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT02',5);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('M0T03',1);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT01',2);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT02',6);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT01',3);
Insert into VEH_MAIN (VIP_MOT_IND,VIP_IND) values ('MOT01',4);
**VEH_ENGINE_SUB* (table for engine subclass)*
CREATE TABLE VEH_ENG_SUB
( ENG_SUBCLASS VARCHAR2(50 BYTE),
ENG_MOT_IND VARCHAR2(10 BYTE)
Insert into VEH_ENG_SUB (ENG_SUBCLASS,ENG_MOT_IND) values ('ENGSUB001','MOT01');
Insert into VEH_ENG_SUB (ENG_SUBCLASS,ENG_MOT_IND) values ('ENGSUB001','MOT02');
*VEH_ENG_IND( Detail table for engine subclass)*
CREATE TABLE VEH_ENG_IND
( "ENG_SUBCLASS" VARCHAR2(50 BYTE),
"ENG_IND" VARCHAR2(10 BYTE)
Insert into VEH_ENG_IND (ENG_SUBCLASS,ENG_IND) values ('ENGSUB001','1');
Insert into VEH_ENG_IND (ENG_SUBCLASS,ENG_IND) values ('ENGSUB001','2');
*VEH_AXIS( Master table for Engine Axis)*
CREATE TABLE VEH_AXIS
( ENG_AXIS VARCHAR2(50 BYTE),
AXIS_MOT_IND VARCHAR2(10 BYTE)
Insert into VEH_AXIS (ENG_AXIS,AXIS_MOT_IND) values ('ENGAXIS001','MOT01');
Insert into VEH_AXIS (ENG_AXIS,AXIS_MOT_IND) values ('ENGAXIS002','MOT02');
*VEH_AXIS_IND( Details table for engine axis)*
CREATE TABLE VEH_AXIS_IND
( ENG_AXIS VARCHAR2(50 BYTE),
ENG_IND VARCHAR2(10 BYTE)
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS001','1');
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS001','2');
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS001','3');
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS001','4');
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS002','5');
Insert into VEH_AXIS_IND (ENG_AXIS,ENG_IND) values ('ENGAXIS002','6');
Condition 1
if i select only ENGINE_SUBCLASS='ENGSUB001' then
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_eng_sub vsub,
veh_eng_ind vind
WHERE (v.vip_mot_ind= vsub.eng_mot_ind
and v.vip_ind=vind.eng_ind
and vsub.eng_subclass= vind.eng_subclass
AND vsub.eng_subclass='ENGSUB001' )output is
MOT01 1
MOT01 2
Condition 2:if i select only the Engine Axis='ENGAXIS002' then the
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_axis vaxis,
veh_axis_ind vaind
WHERE v.vip_mot_ind= vaxis.axis_mot_ind
and v.vip_ind= vaind.eng_ind
and vaind.eng_axis= vaxis.eng_axis
and vaxis.eng_axis='ENGAXIS002';MOT02 5
MOT02 6
Condition 3:
BOTH ENGINE AXIS AND ENGINE SUBCLASS
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_eng_sub vsub,
veh_eng_ind vind,
veh_axis vaxis,
veh_axis_ind vaind
WHERE (v.vip_mot_ind= vsub.eng_mot_ind
and v.vip_ind=vind.eng_ind
and vsub.eng_subclass= vind.eng_subclass
AND vsub.eng_subclass='ENGSUB001' )
AND ( v.vip_mot_ind= vaxis.axis_mot_ind
and v.vip_ind= vaind.eng_ind
and vaind.eng_axis= vaxis.eng_axis
and vaxis.eng_axis='ENGAXIS002');Null values returned. this is correct.
But the query PERFORMANCE fails in OR CONDITON as below
Condition 4;
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_eng_sub vsub,
veh_eng_ind vind,
veh_axis vaxis,
veh_axis_ind vaind
WHERE (v.vip_mot_ind= vsub.eng_mot_ind
and v.vip_ind=vind.eng_ind
and vsub.eng_subclass= vind.eng_subclass
AND vsub.eng_subclass='ENGSUB001' )
OR ( v.vip_mot_ind= vaxis.axis_mot_ind
and v.vip_ind= vaind.eng_ind
and vaind.eng_axis= vaxis.eng_axis
and vaxis.eng_axis='ENGAXIS002');output
MOT02 5
MOT02 5
MOT02 5
MOT02 5
MOT02 6
MOT02 6
MOT02 6
MOT02 6
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 1
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
MOT01 2
This is sample example. when i implement in huge table with partition this scennario takes much time even 2 hours to run.
i want the output must be as below if i use OR condition like condition 4
MOT01 1
MOT01 2
MOT02 5
MOT02 6
Gurus and experts pls help me to solve this problem. Dont give any suggestion like
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_axis vaxis,
veh_axis_ind vaind
WHERE v.vip_mot_ind= vaxis.axis_mot_ind
and v.vip_ind= vaind.eng_ind
and vaind.eng_axis= vaxis.eng_axis
and vaxis.eng_axis='ENGAXIS002'
union
SELECT vip_mot_ind,vip_ind
FROM veh_main V,
veh_eng_sub vsub,
veh_eng_ind vind
WHERE (v.vip_mot_ind= vsub.eng_mot_ind
and v.vip_ind=vind.eng_ind
and vsub.eng_subclass= vind.eng_subclass
AND vsub.eng_subclass='ENGSUB001' )
}this will give correct result...
MOT01 1
MOT01 2
MOT02 5
MOT02 6
but the problem is we cannot implement this in query. because query get framed at runtime there will be so many implement has to be done. other than UNION pls give me more suggesion
waiting..
S
Edited by: A Beginner on Sep 11, 2010 12:51 AMcreate a view v1 with all the joins
select * from v1 where eng_subclass='ENGSUB001'
union
select * from v1 where eng_axis='ENGAXIS002'
If you really do not like the direct access with union, try this
select * from v1
where vsub_PK in (select vsub_PK from v1 where eng_subclass='ENGSUB001' )
OR vsub_PK in (select vsub_PK from v1 where eng_axis='ENGAXIS002')
--vsub_PK is the primary key of table vsub -
hi..I cant activate my Iphone 5. I bought this from someone who cant remember her apple password and even the email address that she used to set up the account.What am I gonna do now....How can I activate my Iphone. what are my options...pls help me.thank you
Activation Lock in iOS 7 > http://support.apple.com/kb/HT5818
hannibalfromlemery wrote:
.I cant activate my Iphone 5. I bought this from someone
The Apple ID and Password that was Originally used to Activate the iDevice is required.
If you cannot get this information from the seller
Removing a device from a previous owner’s account
You need to return the Device for a refund, as you will not be able to re-activate it. -
i cant update my iphone 3gs to a more newer ios? it says here error! and the phone flashes some connect to itunes.. an if i connct nothing happens.. help me.. the ipgone wont open . and work pls help me thank you!
Hello AlexCornejo,
Thanks for using Apple Support Communities.
The screen you're seeing on your iPhone indicates it is in recovery mode. Now since the device is not appearing in iTunes on your PC, first follow the steps in this article:
iOS: Device not recognized in iTunes for Windows
http://support.apple.com/kb/TS1538
After following those steps, you should be able to restore your iPhone.
Take care,
Alex H. -
pls. help my iPhone stuck in recovery mode and iTunes wont recognize it..i tried the other options that posted here,,,pls tell me what to do..before it was just stuck in an apple logo but when i tried recovery mode to itunes then it stuck..
Hi awison,
If your iPhone is not recognized by iTunes on your Windows computer you may want to use the steps in this article to troubleshoot -
iOS: Device not recognized in iTunes for Windows
http://support.apple.com/kb/TS1538
This may also resolve your recovery mode issue. If it does not, use the steps in this article to resolve it -
Use iTunes to restore your iOS device to factory settings
http://support.apple.com/kb/HT1414
Thanks for using Apple Support Communities.
Best,
Brett L -
hi, i have macbook A1181 and i lost my install DVD os, i need to buy, im here in philippines, manila, pls help me how can i get the DVD. tnx
Ask the store for a local Macintosh Users Group / Club... maybe someone there can help you. You might check pawn shops in the area for a machine that has a full set of disks. Apple will sell/mail you a set. I don't know of anyplace to legitimately download them... For what its worth any commercial (e.g. full retail version) install of OS X on disk should work for your machine.
-
pls help us.. just try to transfer a one movie on ipad2 ,sync it thru itunes and when i finished i cant open any more my games or all
applications,, standard apps is ok except to all games we purchase like smurf and hd race..screen flicker and crash and it wont continue ..pls help us
tnx in advanceTry downloading another app - any app - pick a free app and download it. See if that helps reset the iPad.
If that doesn't work, then reboot the iPad. Hold down on the sleep and home buttons at the same time for about 10-15 seconds until the Apple logo appears - ignore the red slider - let go of the buttons. -
Pls help me writing logic:iterate tag in jsp page
Hey guys , I am struck in retriving string p1,p2,p3 in the jsp page
Pls have a look ata the code
In DAO class:-
StdprdDAO.java
Public arrayList getPFP()
ArrayList a = new ArrayList();
While(rs.next())
columnsVO colVO = new columnsVO;
colVO.setProduct(rset.getString(1));//will store in String colProduct
colVO.setFamily(rset.getString(2));//will store in String colFamily
colVO.setPrice(rset.getString(3));//will store in String colPrice
a.add(colVO);
return a;
In Action Class:-
ArrayList final = null;
StdprdDAO DAO = new stdprdDAO();
final = DAO.getPFP();
For(int i = 0; final !=null && i<final.size() ; i++)
columnsVO VO = null;
VO = (columnsVO)final.get(i);
String p1 = (String) VO.getProduct();
String p2 = (String) VO.getFamily();
String p3 = (String) VO.getPrice();
Request.setAttribute(p1,p1);
Request.setAttribute(p2,p2);
Request.setAttribute(p3,p3);
In JSP PAGE:-
id = columnsVO>
<bean:write name = columnsVO property=final id=p1>
but still I am doubting my above sentences in jsp page ,so pls correct them if possible.
Instead of l;ogic:iterate can I use directly getattribute(p1)? <logic:iterate
Still I m doubting I can not utilize columnsVO file in logic:iterate, I can utilize only formbean file.
So pls help me with this.May I ask why have you done it?
If it is related to printing of the list then it is of no use.But it IS of use. The objects compEmployees is in scope.
It has the list we want to print out.
With logic:iterate:
<table>
<tr>
<th>Number</th>
<th>Employee</th>
</tr>
<logic:iterate name="compEmployees" property="totalEmps" id="emp">
<tr>
<td>
<bean:write name="emp" property="empNo"/>
</td>
<td>
<bean:write name="emp" property="empName"/>
</td>
</tr>
</logic:iterate>
</table>or alternatively with JSTL and c:forEach
<table>
<tr>
<th>Number</th>
<th>Employee</th>
</tr>
<c:forEach items="${compEmployees.totalEmps}" var="emp">
<tr>
<td>
<c:out value="${emp.empNo}"/>
</td>
<td>
<c:out value="${emp.empName}"/>
</td>
</tr>
</c:forEach>
</table>Cheers,
evnafets -
Can someone pls help me with this code
The method createScreen() creates the first screen wherein the user makes a selection if he wants all the data ,in a range or single data.The problem comes in when the user makes a selection of single.that then displays the singleScreen() method.Then the user has to input a key data like date or invoice no on the basis of which all the information for that set of data is selected.Now if the user inputs a wrong key that does not exist for the first time the program says invalid entry of data,after u click ok on the option pane it prompts him to enter the data again.But since then whenever the user inputs wrong data the program says wrong data but after displaying the singlescreen again does not wait for input from the user it again flashes the option pane with the invalid entry message.and this goes on doubling everytime the user inputs wrong data.the second wrong entry of data flashes the error message twice,the third wrong entry flashes the option pane message 4 times and so on.What actually happens is it does not wait at the singlescreen() for user to input data ,it straight goes into displaying the JOptionPane message for wrong data entry so we have to click the optiion pane twice,four times and so on.
Can someone pls help me with this!!!!!!!!!
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.text.*;
import java.util.*;
public class MainMenu extends JFrame implements ActionListener,ItemListener{
//class
FileReaderDemo1 fd=new FileReaderDemo1();
FileReaderDemo1 fr;
Swing1Win sw;
//primary
int monthkey=1,counter=0;
boolean flag=false,splitflag=false;
String selection,monthselection,dateselection="01",yearselection="00",s,searchcriteria="By Date",datekey,smonthkey,invoiceno;
//arrays
String singlesearcharray[];
String[] monthlist={"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"};
String[] datelist=new String[31];
String[] yearlist=new String[100];
String[] searchlist={"By Date","By Invoiceno"};
//collection
Hashtable allinvoicesdata=new Hashtable();
Vector data=new Vector();
Enumeration keydata;
//components
JButton next=new JButton("NEXT>>");
JComboBox month,date,year,search;
JLabel bydate,byinvno,trial;
JTextField yeartext,invtext;
JPanel panel1,panel2,panel3,panel4;
JRadioButton single,range,all;
ButtonGroup group;
JButton select=new JButton("SELECT");
//frame and layout declarations
JFrame jf;
Container con;
GridBagLayout gridbag=new GridBagLayout();
GridBagConstraints gc=new GridBagConstraints();
//constructor
MainMenu(){
jf=new JFrame();
con=getContentPane();
con.setLayout(null);
fr=new FileReaderDemo1();
createScreen();
setSize(500,250);
setLocation(250,250);
setVisible(true);
//This is thefirst screen displayed
public void createScreen(){
group=new ButtonGroup();
single=new JRadioButton("SINGLE");
range=new JRadioButton("RANGE");
all=new JRadioButton("ALL");
search=new JComboBox(searchlist);
group.add(single);
group.add(range);
group.add(all);
single.setBounds(100,50,100,20);
search.setBounds(200,50,100,20);
range.setBounds(100,90,100,20);
all.setBounds(100,130,100,20);
select.setBounds(200,200,100,20);
con.add(single);
con.add(search);
con.add(range);
con.add(all);
con.add(select);
search.setEnabled(false);
single.addItemListener(this);
search.addActionListener(new MyActionListener());
range.addItemListener(this);
all.addItemListener(this);
select.addActionListener(this);
public class MyActionListener implements ActionListener{
public void actionPerformed(ActionEvent a){
JComboBox cb=(JComboBox)a.getSource();
if(a.getSource().equals(month))
monthkey=((cb.getSelectedIndex())+1);
if(a.getSource().equals(date)){
dateselection=(String)cb.getSelectedItem();
if(a.getSource().equals(year))
yearselection=(String)cb.getSelectedItem();
if(a.getSource().equals(search)){
searchcriteria=(String)cb.getSelectedItem();
public void itemStateChanged(ItemEvent ie){
if(ie.getItem()==single){
selection="single";
search.setEnabled(true);
else if (ie.getItem()==all){
selection="all";
search.setEnabled(false);
else if (ie.getItem()==range){
search.setEnabled(false);
public void actionPerformed(ActionEvent ae){
if(ae.getSource().equals(select))
if(selection.equals("single")){
singleScreen();
if(selection.equals("all"))
sw=new Swing1Win();
if(ae.getSource().equals(next)){
if(monthkey<9)
smonthkey="0"+monthkey;
System.out.println(smonthkey+"/"+dateselection+"/"+yearselection+"it prints this");
allinvoicesdata=fr.read(searchcriteria);
if (searchcriteria.equals("By Date")){
System.out.println("it goes in this");
singleinvoice(smonthkey+"/"+dateselection+"/"+yearselection);
else if (searchcriteria.equals("By Invoiceno")){
invoiceno=invtext.getText();
singleinvoice(invoiceno);
if (flag == false){
System.out.println("flag is false");
singleScreen();
else{
System.out.println("its in here");
singlesearcharray=new String[data.size()];
data.copyInto(singlesearcharray);
sw=new Swing1Win(singlesearcharray);
public void singleinvoice(String searchdata){
keydata=allinvoicesdata.keys();
while(keydata.hasMoreElements()){
s=(String)keydata.nextElement();
if(s.equals(searchdata)){
System.out.println(s);
flag=true;
break;
if (flag==true){
System.out.println("vector found");
System.exit(0);
data= ((Vector)(allinvoicesdata.get(s)));
else{
JOptionPane.showMessageDialog(jf,"Invalid entry of date : choose again");
public void singleScreen(){
System.out.println("its at the start");
con.removeAll();
SwingUtilities.updateComponentTreeUI(con);
con.setLayout(null);
counter=0;
panel2=new JPanel(gridbag);
bydate=new JLabel("By Date : ");
byinvno=new JLabel("By Invoice No : ");
dateComboBox();
invtext=new JTextField(6);
gc.gridx=0;
gc.gridy=0;
gc.gridwidth=1;
gridbag.setConstraints(month,gc);
panel2.add(month);
gc.gridx=1;
gc.gridy=0;
gridbag.setConstraints(date,gc);
panel2.add(date);
gc.gridx=2;
gc.gridy=0;
gc.gridwidth=1;
gridbag.setConstraints(year,gc);
panel2.add(year);
bydate.setBounds(100,30,60,20);
con.add(bydate);
panel2.setBounds(170,30,200,30);
con.add(panel2);
byinvno.setBounds(100,70,100,20);
invtext.setBounds(200,70,50,20);
con.add(byinvno);
con.add(invtext);
next.setBounds(300,200,100,20);
con.add(next);
if (searchcriteria.equals("By Invoiceno")){
month.setEnabled(false);
date.setEnabled(false);
year.setEnabled(false);
else if(searchcriteria.equals("By Date")){
byinvno.setEnabled(false);
invtext.setEnabled(false);
monthkey=1;
dateselection="01";
yearselection="00";
month.addActionListener(new MyActionListener());
date.addActionListener(new MyActionListener());
year.addActionListener(new MyActionListener());
next.addActionListener(this);
invtext.addKeyListener(new KeyAdapter(){
public void keyTyped(KeyEvent ke){
char c=ke.getKeyChar();
if ((c == KeyEvent.VK_BACK_SPACE) ||(c == KeyEvent.VK_DELETE)){
System.out.println(counter+"before");
counter--;
System.out.println(counter+"after");
else
counter++;
if(counter>6){
System.out.println(counter);
counter--;
ke.consume();
else
if(!((Character.isDigit(c) || (c == KeyEvent.VK_BACK_SPACE) || (c == KeyEvent.VK_DELETE)))){
getToolkit().beep();
counter--;
JOptionPane.showMessageDialog(null,"please enter numerical value");
ke.consume();
System.out.println("its at the end");
public void dateComboBox(){
for (int counter=0,day=01;day<=31;counter++,day++)
if(day<=9)
datelist[counter]="0"+String.valueOf(day);
else
datelist[counter]=String.valueOf(day);
for(int counter=0,yr=00;yr<=99;yr++,counter++)
if(yr<=9)
yearlist[counter]="0"+String.valueOf(yr);
else
yearlist[counter]=String.valueOf(yr);
month=new JComboBox(monthlist);
date=new JComboBox(datelist);
year=new JComboBox(yearlist);
public static void main(String[] args){
MainMenu mm=new MainMenu();
public class WindowHandler extends WindowAdapter{
public void windowClosing(WindowEvent we){
jf.dispose();
System.exit(0);
}Hi,
I had a similar problem with a message dialog. Don't know if it is a bug, I was in a hurry and had no time to search the bug database... I found a solution by using keyPressed() and keyReleased() instead of keyTyped():
private boolean pressed = false;
public void keyPressed(KeyEvent e) {
pressed = true;
public void keyReleased(KeyEvent e) {
if (!pressed) {
e.consume();
return;
// Here you can test whatever key you want
//...I don't know if it will help you, but it worked for me.
Regards. -
Java Web Start- Cannot launch Application. Pls help
HI
Ia m beginner in java web start. I creaate a simple swing application and try to launch it through web start. But I failed. My application jar file (sample.jar)contains only class files. No menifest file. Then I sign my "sample.jar" file and placed inside tomcat server: "webapps/root/WebStart/Sample". I also placed the "sample.jnlp" file in the above directory.The name of my main class is :"Sample" .Here is the content of sample.jnlp:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+"
codebase="http://165.231199.164:8080"
>
<information>
<title>Sample Launching Test</title>
<vendor>FMO</vendor>
<homepage href="www.sun.com" />
<description>Demonstration of JNLP</description>
</information>
<offline-allowed/>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.2+" />
<jar href="/WebStart/Sample/sample.jar"/>
</resources>
<application-desc main-class="Sample" />
</jnlp>Whenever I try to launch this application from the browser , it shows me following :
An error occurred while launching/running the application.
Title: Sample Launching Test
Vendor: FMO
Category: Unexpected Error
RED
Anybody pls help me here about how to Launch my application. Am I missing something?I fixed the porblem by modifying the sample.jnlp file. Here is the latest version:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp codebase=http://[my-ip-address]:8080/WebStart/Sample>
<href="sample.jnlp">
<information>
<title>Sample Launching Test</title>
<vendor>FMO</vendor>
<homepage href="www.sun.com" />
<description>Demonstration of JNLP</description>
<offline-allowed/>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version=1.4+ />
<jar href="sample.jar"/>
</resources>
<application-desc main-class="Sample" />
</jnlp> -
Unknown problem with JSP, JavaScript - Pls help
Hi Friends,
I am facing a strange problem. Explained it below. Kindly help me as it is really affecting my work. Thanks in advance.
I am working on building a web application using jsp, servlet, ejb. the IDE used is WSAD 5.1.2.
I have the below :
1 JSP - Input page - for user input entry
2. Java script1 - For all client side validations
Java script2 - For handling the data submission to servlet (as selected by user)
Javascript3 - Header & Menu Bar
3 Servlet - This actually retrieves the values from the hidden parameters, sets them in session and redirects the control back to the jsp.
Logic for one small iteration : Two drop downs are there. On selecting the first drop down the second drop down should be populated and the first drop down should display the user selected value.
1. When the user selects the first drop down onchange() event gets fired which calls a method in the javascript.
2. In the javascript I set the value of a hidden form field to the selected combo index and submit the form to the servlet
3. In the servlet, I retrieve the hidden request parameter (Index),
set the index in session. Do my business logic based on the value of the index. Set the collection (to be displayed) in second drop down in session.
4. Send the response back to the JSP.
5. In the JSP, we have a method which is called during the onload() event of the body
6. This method sets the user selected values in appropriate controls(by taking from session)
Problem faced: I have a javascript which creates the menu bar for my application and this i've included it in my jsp. I dont know whats wrong with this javascript, when it is commented out the page works perfectly fine. Both the user selected value and the collection are loaded exactly as expected. But when it is included the collection is loaded in the second drop down but the selected index of the first drop down is not set - the drop down gets reset to the default value.
Also on body load of my jsp, I call a javascript method which sets the current date in one text field of my form. Even this is not working fine when I include this javascript. I don't see any script error in this javascript in my browser though. Strange but guess something basic :(
I'm sure there is nothing to do with session. I've tried printing the entire flow. The Servlet sets the values correctly in session and they are also correctly available in the JSP page. The JSP also gets loaded with the user selected values but something happens on page load which clears the values to default.
Am also confused in what way javascript is related to this, coz when I remove it things are working fine.
Am really helpless here pls do the needful. any help is appreciated.
Header.js [which includes the menu bar code]
document.write("<!-- COMMON HEADER CODE -->")
document.write(" <table id='mplPageHeader' cellspacing='0' cellpadding='2' border='0'>")
document.write(" <tr> ")
document.write(" <td rowspan='2' bgcolor='#FFFFFF' width='1%'>")
document.write(" <a href='http://www.web.com' target='_top'>")
document.write(" <img src='./images/ford.gif' alt='BLogistics' border='0'>")
document.write(" </a> ")
document.write(" </td>")
document.write(" <td rowspan='2' class='appTitle' title='Mp' width='1%'>MP&L</td>")
document.write(" <td class='appTitle' title='M R'>M R</td>")
document.write(" <td class='pageIdentifier'>"+' '+"</td>");
document.write(" </tr>")
document.write(" <tr>")
document.write(" <td class='pageTitle' nowrap></td>");
document.write(" <td class='dateInfo' nowrap>Thu Jan 22 2004 12:24 PM</td>")
document.write(" </tr>")
document.write(" </table>")
document.write("<!-- Display Menu Items -->")
document.write("<div id='navigationMenu'>")
document.write(" <script type='text/javascript' src='./javascript/MRmenuItem.js'></script>")
document.write(" <script type='text/javascript' src='./javascript/menuScript.js'></script>")
document.write("</div>")-------------------------------------------------------
Menu Bar Code
var AgntUsr=navigator.userAgent.toLowerCase();
var AppVer=navigator.appVersion.toLowerCase();
var DomYes=document.getElementById?1:0,NavYes=AgntUsr.indexOf("mozilla")!=-1&&AgntUsr.indexOf("compatible")==-1?1:0,ExpYes=AgntUsr.indexOf("msie")!=-1?1:0,Opr=AgntUsr.indexOf("opera")!=-1?1:0;
var DomNav=DomYes&&NavYes?1:0,DomExp=DomYes&&ExpYes?1:0;
var Nav4=NavYes&&!DomYes&&document.layers?1:0,Exp4=ExpYes&&!DomYes&&document.all?1:0;
var MacCom=(AppVer.indexOf("mac")!= -1)?1:0,MacExp4=(MacCom&&AppVer.indexOf("msie 4")!= -1)?1:0,Mac4=(MacCom&&(Nav4||Exp4))?1:0;
var Exp5=AppVer.indexOf("msie 5")!= -1?1:0,Fltr=(AppVer.indexOf("msie 6")!= -1||AppVer.indexOf("msie 7")!= -1)?1:0,MacExp5=(MacCom&&Exp5)?1:0,PosStrt=(NavYes||ExpYes)&&!Opr?1:0;
var RmbrNow=null,FLoc,ScLoc,DcLoc,SWinW,SWinH,FWinW,FWinH,SLdAgnWin,FColW,SColW,DColW,RLvl=0,FrstCreat=1,Ldd=0,Crtd=0,IniFlg,AcrssFrms=1,FrstCntnr=null,CurOvr=null,CloseTmr=null,CntrTxt,TxtClose,ImgStr,ShwFlg=0,M_StrtTp=StartTop,M_StrtLft=StartLeft,StaticPos=0,LftXtra=DomNav?LeftPaddng:0,TpXtra=DomNav?TopPaddng:0,FStr="",M_Hide=Nav4?"hide":"hidden",M_Show=Nav4?"show":"visible",Par=MenuUsesFrames?parent:window,Doc=Par.document,Bod=Doc.body,Trigger=NavYes?Par:Bod;
var Ztop=100,InitLdd=0,P_X=DomYes?"px":"";
var OpnTmr=null;
if(PosStrt){if(MacExp4||MacExp5)LdTmr=setInterval("ChckInitLd()",100);
else{if(Trigger.onload)Dummy=Trigger.onload;
if(DomNav)Trigger.addEventListener("load",Go,false);
else Trigger.onload=Go}}
function ChckInitLd(){
InitLdd=(MenuUsesFrames)?(Par.document.readyState=="complete"&&Par.frames[FirstLineFrame].document.readyState=="complete"&&Par.frames[SecLineFrame].document.readyState=="complete")?1:0:(Par.document.readyState=="complete")?1:0;
if(InitLdd){clearInterval(LdTmr);Go()}}
function Dummy(){return}
function CnclSlct(){return false}
function RePos(){
FWinW=ExpYes?FLoc.document.body.clientWidth:FLoc.innerWidth;
FWinH=ExpYes?FLoc.document.body.clientHeight:FLoc.innerHeight;
SWinW=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
SWinH=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
if(MenuCentered.indexOf("justify")!=-1&&FirstLineHorizontal){
ClcJus();
var P=FrstCntnr.FrstMbr,W=Menu1[5],a=BorderBtwnMain?NoOffFirstLineMenus+1:2,i;
FrstCntnr.style.width=NoOffFirstLineMenus*W+a*BorderWidthMain+P_X;
for(i=0;i<NoOffFirstLineMenus;i++){
P.style.width=W-(P.value.indexOf("<")==-1?LftXtra:0)+P_X;
if(P.ai&&!RightToLeft)
P.ai.style.left=BottomUp?W-BorderColor-2+P_X:W-Arrws[4]-2+P_X;
P=P.PrvMbr
StaticPos=-1;
ClcRl();
if(TargetLoc)ClcTrgt();ClcLft();ClcTp();
PosMenu(FrstCntnr,StartTop,StartLeft);
if(RememberStatus)StMnu()}
function NavUnLdd(){Ldd=0;Crtd=0;SetMenu="0"}
function UnLdd(){
NavUnLdd();
if(ExpYes){var M=FrstCntnr?FrstCntnr.FrstMbr:null;
while(M!=null){if(M.CCn){MakeNull(M.CCn);M.CCn=null}
M=M.PrvMbr}}
if(!Nav4){LdTmr=setInterval("ChckLdd()",100)}}
function UnLddTotal(){MakeNull(FrstCntnr);FrstCntnr=RmbrNow=FLoc=ScLoc=DcLoc=SLdAgnWin=CurOvr=CloseTmr=Doc=Bod=Trigger=null}
function MakeNull(P){
var M=P.FrstMbr,Mi;
while(M!=null){Mi=M;
if(M.CCn){MakeNull(M.CCn);M.CCn=null}
M.Cntnr=null;M=M.PrvMbr;Mi.PrvMbr=null;Mi=null}
P.FrstMbr=null}
function ChckLdd(){
if(!ExpYes){if(ScLoc.document.body){clearInterval(LdTmr);Go()}}
else if(ScLoc.document.readyState=="complete"){if(LdTmr)clearInterval(LdTmr);Go()}}
function NavLdd(e){if(e.target!=self)routeEvent(e);if(e.target==ScLoc)Go()}
function ReDoWhole(){if(AppVer.indexOf("4.0")==-1)Doc.location.reload();else if(SWinW!=ScLoc.innerWidth||SWinH!=ScLoc.innerHeight||FWinW!=FLoc.innerWidth||FWinH!=FLoc.innerHeight)Doc.location.reload()}
function Go(){
if(!Ldd&&PosStrt){
BeforeStart();
Crtd=0;Ldd=1;
FLoc=MenuUsesFrames?parent.frames[FirstLineFrame]:window;
ScLoc=MenuUsesFrames?parent.frames[SecLineFrame]:window;
DcLoc=MenuUsesFrames?parent.frames[DocTargetFrame]:window;
if(MenuUsesFrames){
if(!FLoc){FLoc=ScLoc;if(!FLoc){FLoc=ScLoc=DcLoc;if(!FLoc)FLoc=ScLoc=DcLoc=window}}
if(!ScLoc){ScLoc=DcLoc;if(!ScLoc)ScLoc=DcLoc=FLoc}
if(!DcLoc)DcLoc=ScLoc}
if(FLoc==ScLoc)AcrssFrms=0;
if(AcrssFrms)FirstLineHorizontal=MenuFramesVertical?0:1;
FWinW=ExpYes?FLoc.document.body.clientWidth:FLoc.innerWidth;
FWinH=ExpYes?FLoc.document.body.clientHeight:FLoc.innerHeight;
SWinW=ExpYes?ScLoc.document.body.clientWidth:ScLoc.innerWidth;
SWinH=ExpYes?ScLoc.document.body.clientHeight:ScLoc.innerHeight;
FColW=Nav4?FLoc.document:FLoc.document.body;
SColW=Nav4?ScLoc.document:ScLoc.document.body;
DColW=Nav4?DcLoc.document:ScLoc.document.body;
if(TakeOverBgColor){
if(ExpYes&&MacCom)FColW.style.backgroundColor=AcrssFrms?SColW.bgColor:DColW.bgColor;
else FColW.bgColor=AcrssFrms?SColW.bgColor:DColW.bgColor}
if(MenuCentered.indexOf("justify")!=-1&&FirstLineHorizontal)ClcJus();
if(FrstCreat||FLoc==ScLoc)FrstCntnr=CreateMenuStructure("Menu",NoOffFirstLineMenus,null);
else CreateMenuStructureAgain("Menu",NoOffFirstLineMenus);
ClcRl();
if(TargetLoc)ClcTrgt();ClcLft();ClcTp();
PosMenu(FrstCntnr,StartTop,StartLeft);
IniFlg=1;Initiate();Crtd=1;
SLdAgnWin=ExpYes?ScLoc.document.body:ScLoc;SLdAgnWin.onunload=Nav4?NavUnLdd:UnLdd;
if(ExpYes)Trigger.onunload=UnLddTotal;
Trigger.onresize=Nav4?ReDoWhole:RePos;
AfterBuild();
if(RememberStatus)StMnu();
if(Nav4&&FrstCreat){Trigger.captureEvents(Event.LOAD);Trigger.onload=NavLdd}
if(FrstCreat)Dummy();FrstCreat=0;
if(MenuVerticalCentered=="static"&&!AcrssFrms)setInterval("KeepPos()",250) }}
function KeepPos(){
var TS=ExpYes?FLoc.document.body.scrollTop:FLoc.pageYOffset;
if(TS!=StaticPos){var FCSt=Nav4?FrstCntnr:FrstCntnr.style;
FrstCntnr.OrgTop=StartTop+TS;FCSt.top=FrstCntnr.OrgTop+P_X;StaticPos=TS}}
function ClcRl(){
StartTop=M_StrtTp<1&&M_StrtTp>0?M_StrtTp*FWinH:M_StrtTp;
StartLeft=M_StrtLft<1&&M_StrtLft>0?M_StrtLft*FWinW:M_StrtLft}
function ClcJus(){
var a=BorderBtwnMain?NoOffFirstLineMenus+1:2,Sz=Math.round((PartOfWindow*FWinW-a*BorderWidthMain)/NoOffFirstLineMenus),i,j;
for(i=1;i<NoOffFirstLineMenus+1;i++){j=eval("Menu"+i);j[5]=Sz}
StartLeft=0}
function ClcTrgt(){
var TLoc=Nav4?FLoc.document.layers[TargetLoc]:DomYes?FLoc.document.getElementById(TargetLoc):FLoc.document.all[TargetLoc];
if(DomYes){while(TLoc){StartTop+=TLoc.offsetTop;StartLeft+=TLoc.offsetLeft;TLoc=TLoc.offsetParent}}
else{StartTop+=Nav4?TLoc.pageY:TLoc.offsetTop;StartLeft+=Nav4?TLoc.pageX:TLoc.offsetLeft}}
function ClcLft(){
if(MenuCentered.indexOf("left")==-1){
var Sz=FWinW-(!Nav4?parseInt(FrstCntnr.style.width):FrstCntnr.clip.width);
StartLeft+=MenuCentered.indexOf("right")!=-1?Sz:Sz/2;
if(StartLeft<0)StartLeft=0}}
function ClcTp(){
if(MenuVerticalCentered!="top"&&MenuVerticalCentered!="static"){
var Sz=FWinH-(!Nav4?parseInt(FrstCntnr.style.height):FrstCntnr.clip.height);
StartTop+=MenuVerticalCentered=="bottom"?Sz:Sz/2;
if(StartTop<0)StartTop=0}}
function PosMenu(Ct,Tp,Lt){
RLvl++;
var Ti,Li,Hi,Mb=Ct.FrstMbr,CStl=!Nav4?Ct.style:Ct,MStl=!Nav4?Mb.style:Mb,PadL=Mb.value.indexOf("<")==-1?LftXtra:0,PadT=Mb.value.indexOf("<")==-1?TpXtra:0,MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width,MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height,CWt=!Nav4?parseInt(CStl.width):CStl.clip.width,CHt=!Nav4?parseInt(CStl.height):CStl.clip.height,CCw,CCh,STp,SLt;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub,BTWn=RLvl==1?BorderBtwnMain:BorderBtwnSub;
if(RLvl==1&&AcrssFrms)!MenuFramesVertical?Tp=BottomUp?0:FWinH-CHt+(Nav4?MacCom?-2:4:0):Lt=RightToLeft?0:FWinW-CWt+(Nav4?MacCom?-2:4:0);
if(RLvl==2&&AcrssFrms)!MenuFramesVertical?Tp=BottomUp?SWinH-CHt+(Nav4?MacCom?-2:4:0):0:Lt=RightToLeft?SWinW-CWt:0;
if(RLvl==2){Tp+=VerCorrect;Lt+=HorCorrect}
CStl.top=RLvl==1?Tp+P_X:0;Ct.OrgTop=Tp;
CStl.left=RLvl==1?Lt+P_X:0;Ct.OrgLeft=Lt;
if(RLvl==1&&FirstLineHorizontal){Hi=1;Li=CWt-MWt-2*BRW;Ti=0}
else{Hi=Li=0;Ti=CHt-MHt-2*BRW}
while(Mb!=null){
MStl.left=Li+BRW+P_X;
MStl.top=Ti+BRW+P_X;
if(Nav4)Mb.CLyr.moveTo(Li+BRW,Ti+BRW);
if(Mb.CCn){if(RightToLeft)CCw=Nav4?Mb.CCn.clip.width:parseInt(Mb.CCn.style.width);
if(BottomUp)CCh=Nav4?Mb.CCn.clip.height:parseInt(Mb.CCn.style.height);
if(Hi){STp=BottomUp?Ti-CCh:Ti+MHt+2*BRW;SLt=RightToLeft?Li+MWt-CCw:Li}
else{SLt=RightToLeft?Li-CCw+ChildOverlap*MWt+BRW:Li+(1-ChildOverlap)*MWt;
STp=RLvl==1&&AcrssFrms?BottomUp?Ti-CCh+MHt:Ti:BottomUp?Ti-CCh+(1-ChildVerticalOverlap)*MHt+2*BRW:Ti+ChildVerticalOverlap*MHt+BRW}
PosMenu(Mb.CCn,STp,SLt)}
Mb=Mb.PrvMbr;
if(Mb){ MStl=!Nav4?Mb.style:Mb;PadL=Mb.value.indexOf("<")==-1?LftXtra:0;
PadT=Mb.value.indexOf("<")==-1?TpXtra:0;
MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width;
MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height;
Hi?Li-=BTWn?(MWt+BRW):(MWt):Ti-=BTWn?(MHt+BRW):MHt}}
status="Ready";RLvl--}
function StMnu(){
if(!Crtd)return;
var i,Pntr=FrstCntnr,Str=ScLoc.SetMenu?ScLoc.SetMenu:"0";
while(Str.indexOf("_")!=-1&&RememberStatus==1){
i=Pntr.NrItms-parseInt(Str.substring(0,Str.indexOf("_")));
Str=Str.slice(Str.indexOf("_")+1);
Pntr=Pntr.FrstMbr;
for(i;i;i--)Pntr=Pntr.PrvMbr;
if(Nav4)Pntr.CLyr.OM();
else Pntr.OM();
Pntr=Pntr.CCn}
i=Pntr.NrItms-parseInt(Str);
Pntr=Pntr.FrstMbr;
for(i;i;i--)Pntr=Pntr.PrvMbr;
if(RmbrNow!=null){SetItem(RmbrNow,0);RmbrNow.Clckd=0}
if(Pntr!=null){SetItem(Pntr,1);Pntr.Clckd=1;
if(RememberStatus==1){if(Nav4)Pntr.CLyr.OM();else Pntr.OM()}}
RmbrNow=Pntr;
ClrAllChlds(FrstCntnr.FrstMbr);
Rmbr(FrstCntnr)}
function Initiate(){
if(IniFlg&&Ldd){Init(FrstCntnr);IniFlg=0;if(RememberStatus)Rmbr(FrstCntnr);if(ShwFlg)AfterCloseAll();ShwFlg=0}}
function Rmbr(CntPtr){
var Mbr=CntPtr.FrstMbr,St;
while(Mbr!=null){
if(Mbr.DoRmbr){
HiliteItem(Mbr);
if(Mbr.CCn&&RememberStatus==1){St=Nav4?Mbr.CCn:Mbr.CCn.style;St.visibility=M_Show;Rmbr(Mbr.CCn)}
break}
else Mbr=Mbr.PrvMbr}}
function Init(CPt){
var Mb=CPt.FrstMbr,MCSt=Nav4?CPt:CPt.style;
RLvl++;MCSt.visibility=RLvl==1?M_Show:M_Hide;CPt.Shw=RLvl==1?1:0;
while(Mb!=null){if(Mb.Hilite)LowItem(Mb);if(Mb.CCn)Init(Mb.CCn);Mb=Mb.PrvMbr}
RLvl--}
function ClrAllChlds(Pt){
var PSt,Pc;
while(Pt){if(Pt.Hilite){Pc=Nav4?Pt.CLyr:Pt;if(Pc!=CurOvr){LowItem(Pt)}
if(Pt.CCn){PSt=Nav4?Pt.CCn:Pt.CCn.style;if(Pc!=CurOvr){PSt.visibility=M_Hide;Pt.CCn.Shw=0}ClrAllChlds(Pt.CCn.FrstMbr)}
break}
Pt=Pt.PrvMbr}}
function SetItem(Pntr,x){while(Pntr!=null){Pntr.DoRmbr=x;Pntr=Nav4?Pntr.CLyr.Ctnr.Cllr:Pntr.Ctnr.Cllr}}
function GoTo(){
var HP=Nav4?this.LLyr:this;
if(HP.Arr[1]){status="";LowItem(HP);IniFlg=1;Initiate();
HP.Arr[1].indexOf("javascript:")!=-1?eval(HP.Arr[1]):DcLoc.location.href=BaseHref+HP.Arr[1]}}
function HiliteItem(P){
if(Nav4){ if(P.ro)P.document.images[P.rid].src=P.ri2;
else{
P.bgColor = HighBgColor;
if(P.value.indexOf("<img")==-1){P.document.write(P.Ovalue);P.document.close()}}}
else{
if(P.ro){var Lc=P.Lvl==1?FLoc:ScLoc;Lc.document.images[P.rid].src=P.ri2}
else{
P.style.backgroundColor=HighBgColor;
P.style.color=FontHighColor;
P.Hilite=1
function LowItem(P){
P.Hilite=0;
if(P.ro){if(Nav4)P.document.images[P.rid].src=P.ri1;
else{var Lc=P.Lvl==1?FLoc:ScLoc;Lc.document.images[P.rid].src=P.ri1}}
else{
if(Nav4){
P.bgColor=LowBgColor;
if(P.value.indexOf("<img")==-1){P.document.write(P.value);P.document.close()}}
else{
P.style.backgroundColor=LowBgColor;
P.style.color=FontLowColor;
function OpenMenu(){
if(!Ldd||!Crtd)return;
if(OpnTmr)clearTimeout(OpnTmr);
var P=Nav4?this.LLyr:this;
if(P.NofChlds&&!P.CCn){
RLvl=this.Lvl;
P.CCn=CreateMenuStructure(P.MN+"_",P.NofChlds,P);
var Ti,Li,Hi;
var MStl=!Nav4?P.style:P;
var PadL=P.value.indexOf("<")==-1?LftXtra:0;
var PadT=P.value.indexOf("<")==-1?TpXtra:0;
var MWt=!Nav4?parseInt(MStl.width)+PadL:MStl.clip.width;
var MHt=!Nav4?parseInt(MStl.height)+PadT:MStl.clip.height;
var CCw,CCh,STp,SLt;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub;
if(RightToLeft)CCw=Nav4?P.CCn.clip.width:parseInt(P.CCn.style.width);
if(BottomUp)CCh=Nav4?P.CCn.clip.height:parseInt(P.CCn.style.height);
if(RLvl==1&&FirstLineHorizontal){Hi=1;Li=(Nav4?P.left:parseInt(P.style.left))-BRW;Ti=0}
else{Hi=Li=0;Ti=(Nav4?P.top:parseInt(P.style.top))-BRW}
if(Hi){STp=BottomUp?Ti-CCh:Ti+MHt+2*BRW;SLt=RightToLeft?Li+MWt-CCw:Li}
else{SLt=RightToLeft?Li-CCw+ChildOverlap*MWt+BRW:Li+(1-ChildOverlap)*MWt;
STp=RLvl==1&&AcrssFrms?BottomUp?Ti-CCh+MHt:Ti:BottomUp?Ti-CCh+(1-ChildVerticalOverlap)*MHt+2*BRW:Ti+ChildVerticalOverlap*MHt+BRW}
PosMenu(P.CCn,STp,SLt);
RLvl=0}
var CCnt=Nav4?this.LLyr.CCn:this.CCn,HP=Nav4?this.LLyr:this;
CurOvr=this;IniFlg=0;ClrAllChlds(this.Ctnr.FrstMbr);
if(!HP.Hilite)HiliteItem(HP);
if(CCnt!=null&&!CCnt.Shw)RememberStatus?Unfld():OpnTmr=setTimeout("Unfld()",UnfoldDelay);
//alert(HP.value);
status=HP.value;
function Unfld(){
var P=CurOvr;
var TS=ExpYes?ScLoc.document.body.scrollTop:ScLoc.pageYOffset,LS=ExpYes?ScLoc.document.body.scrollLeft:ScLoc.pageXOffset,CCnt=Nav4?P.LLyr.CCn:P.CCn,THt=Nav4?P.clip.height:parseInt(P.style.height),TWt=Nav4?P.clip.width:parseInt(P.style.width),TLt=AcrssFrms&&P.Lvl==1&&!FirstLineHorizontal?0:Nav4?P.Ctnr.left:parseInt(P.Ctnr.style.left),TTp=AcrssFrms&&P.Lvl==1&&FirstLineHorizontal?0:Nav4?P.Ctnr.top:parseInt(P.Ctnr.style.top);
// TS != 0 is only needed if the menu DIVs are positioned relative to the body.
// We've made them positioned relative to div#navigationMenu which causes
// a problem if TS is based on how the body is scrolled. So set TS to zero.
// Note: the code below will adjust the final top offset based on the height of
// the menu bar so the dropdown appears below (and not on top of) the nav bar.
TS = 0;
var CCW=Nav4?P.LLyr.CCn.clip.width:parseInt(P.CCn.style.width),CCH=Nav4?P.LLyr.CCn.clip.height:parseInt(P.CCn.style.height),CCSt=Nav4?P.LLyr.CCn:P.CCn.style,SLt=AcrssFrms&&P.Lvl==1?CCnt.OrgLeft+TLt+LS:CCnt.OrgLeft+TLt,STp=AcrssFrms&&P.Lvl==1?CCnt.OrgTop+TTp+TS:CCnt.OrgTop+TTp;
if(!ShwFlg){ShwFlg=1;BeforeFirstOpen()}
if(MenuWrap){
if(RightToLeft){if(SLt<LS)SLt=P.Lvl==1?LS:SLt+(CCW+(1-2*ChildOverlap)*TWt);if(SLt+CCW>SWinW+LS)SLt=SWinW+LS-CCW}
else{if(SLt+CCW>SWinW+LS)SLt=P.Lvl==1?SWinW+LS-CCW:SLt-(CCW+(1-2*ChildOverlap)*TWt);if(SLt<LS)SLt=LS}
if(BottomUp){if(STp<TS)STp=P.Lvl==1?TS:STp+(CCH-(1-2*ChildVerticalOverlap)*THt);if(STp+CCH>SWinH+TS)STp=SWinH+TS-CCH+(Nav4?4:0)}
else{if(STp+CCH>TS+SWinH)STp=P.Lvl==1?STp=TS+SWinH-CCH:STp-CCH+(1-2*ChildVerticalOverlap)*THt;if(STp<TS)STp=TS}}
CCSt.top=STp+P_X;CCSt.left=SLt+P_X;
if(Fltr&&MenuSlide){P.CCn.filters[0].Apply();P.CCn.filters[0].play()}
CCSt.visibility=M_Show}
function OpenMenuClick(){
if(!Ldd||!Crtd)return;
var HP=Nav4?this.LLyr:this;CurOvr=this;
IniFlg=0;ClrAllChlds(this.Ctnr.FrstMbr);HiliteItem(HP);
function CloseMenu(){
if(!Ldd||!Crtd)return;
status="";
if(this==CurOvr){if(OpnTmr)clearTimeout(OpnTmr);if(CloseTmr)clearTimeout(CloseTmr);IniFlg=1;CloseTmr=setTimeout("Initiate(CurOvr)",DissapearDelay)}}
function CntnrSetUp(W,H,NoOff,WMu,Mc){
var x=BorderColor;
this.FrstMbr=null;this.NrItms=NoOff;this.Cllr=Mc;this.Shw=0;
this.OrgLeft=this.OrgTop=0;
if(Nav4){if(x)this.bgColor=x;this.visibility="hide";this.resizeTo(W,H)}
else{if(x)this.style.backgroundColor=x;this.style.width=W+P_X;this.style.height=H+P_X;
if(!NavYes)this.style.zIndex=RLvl+Ztop;
if(Fltr){FStr="";if(MenuSlide&&RLvl!=1)FStr=MenuSlide;if(MenuShadow)FStr+=MenuShadow;
if(MenuOpacity)FStr+=MenuOpacity;if(FStr!="")this.style.filter=FStr}}}
function MbrSetUp(MbC,PrMmbr,WMu,Wd,Ht,Nofs){
var Lctn=RLvl==1?FLoc:ScLoc,Tfld=this.Arr[0],t,T,L,W,H,S,a;
this.PrvMbr=PrMmbr;this.Lvl=RLvl;this.Ctnr=MbC;this.CCn=null;this.ai=null;this.Hilite=0;this.DoRmbr=0;
this.Clckd=0;this.OM=OpenMenu;this.style.overflow="hidden";
this.MN=WMu;this.NofChlds=Nofs;
this.style.cursor=(this.Arr[1]||(RLvl==1&&UnfoldsOnClick))?ExpYes?"hand":"pointer":"default";this.ro=0;
if(Tfld.indexOf("rollover")!=-1){this.ro=1;this.ri1=Tfld.substring(Tfld.indexOf("?")+1,Tfld.lastIndexOf("?"));
this.ri2=Tfld.substring(Tfld.lastIndexOf("?")+1,Tfld.length);this.rid=WMu+"i";
Tfld="<img src=\""+this.ri1+"\" name=\""+this.rid+"\" width=\""+Wd+"\" height=\""+Ht+"\">"}
this.value=Tfld;
this.style.color=FontLowColor;
this.style.fontFamily=FontFamily;
this.style.fontSize = FontSize + "pt";
this.style.fontWeight="normal";
this.style.fontStyle="normal";
this.style.backgroundColor=LowBgColor;
if (WMu.length > 6)
{ MenuTextCentered = 'left';}
else
{MenuTextCentered = 'center';}
this.style.textAlign=MenuTextCentered;
if(this.Arr[2])this.style.backgroundImage="url(\""+this.Arr[2]+"\")";
if(Tfld.indexOf("<")==-1){this.style.width=Wd-LftXtra+P_X;this.style.height=Ht-TpXtra+P_X;this.style.paddingLeft=LeftPaddng+P_X;this.style.paddingTop=TopPaddng+P_X}
else{this.style.width=Wd+P_X;this.style.height=Ht+P_X}
if(Tfld.indexOf("<")==-1&&DomYes){t=Lctn.document.createTextNode(Tfld);this.appendChild(t)}
else this.innerHTML=Tfld;
if(this.Arr[3]){a=RLvl==1&&FirstLineHorizontal?BottomUp?9:3:RightToLeft?6:0;
if(Arrws[a]!=""){S=Arrws[a];W=Arrws[a+1];H=Arrws[a+2];T=RLvl==1&&FirstLineHorizontal?BottomUp?2:Ht-H-2:(Ht-H)/2;L=RightToLeft?2:Wd-W-2;
if(DomYes){t=Lctn.document.createElement("img");this.appendChild(t);
t.style.position="absolute";t.src=S;t.style.width=W+P_X;t.style.height=H+P_X;t.style.top=T+P_X;t.style.left=L+P_X}
else{Tfld+="<div id=\""+WMu+"_im\" style=\"position:absolute; top:"+T+"; left:"+L+"; width:"+W+"; height:"+H+";visibility:inherit\"><img src=\""+S+"\"></div>";
this.innerHTML=Tfld;t=Lctn.document.all[WMu+"_im"]}
this.ai=t}}
if(ExpYes){this.onselectstart=CnclSlct;this.onmouseover=RLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;
this.onmouseout=CloseMenu;this.onclick=RLvl==1&&UnfoldsOnClick&&this.Arr[3]?OpenMenu:GoTo}
else{RLvl==1&&UnfoldsOnClick?this.addEventListener("mouseover",OpenMenuClick,false):this.addEventListener("mouseover",OpenMenu,false);
this.addEventListener("mouseout",CloseMenu,false);
RLvl==1&&UnfoldsOnClick&&this.Arr[3]?this.addEventListener("click",OpenMenu,false):this.addEventListener("click",GoTo,false)}}
function NavMbrSetUp(MbC,PrMmbr,WMu,Wd,Ht,Nofs){
var a;
this.value=this.Arr[0];this.ro=0;
if(this.value.indexOf("rollover")!=-1){
this.ro=1;this.ri1=this.value.substring(this.value.indexOf("?")+1,this.value.lastIndexOf("?"));
this.ri2=this.value.substring(this.value.lastIndexOf("?")+1,this.value.length);this.rid=WMu+"i";
this.value="<img src=\""+this.ri1+"\" name=\""+this.rid+"\">"}
CntrTxt="<div align=\""+MenuTextCentered+"\">";
TxtClose="</font>"+ "</div>";
if(LeftPaddng&&this.value.indexOf("<")==-1&&MenuTextCentered=="left")this.value="�\;"+this.value;
this.Ovalue=this.value;
this.value=this.value.fontcolor(FontLowColor);
this.Ovalue=this.Ovalue.fontcolor(FontHighColor);
this.value=CntrTxt+"<font face=\""+FontFamily+"\" point-size=\""+FontSize+"\">"+this.value+TxtClose;
this.Ovalue=CntrTxt+"<font face=\""+FontFamily+"\" point-size=\""+FontSize+"\">"+this.Ovalue+TxtClose;
this.CCn=null;this.PrvMbr=PrMmbr;this.Hilite=0;this.DoRmbr=0;this.Clckd=0;this.visibility="inherit";
this.MN=WMu;this.NofChlds=Nofs;
this.bgColor=LowBgColor;
this.resizeTo(Wd,Ht);
if(!AcrssFrms&&this.Arr[2])this.background.src=this.Arr[2];
this.document.write(this.value);this.document.close();
this.CLyr=new Layer(Wd,MbC);
this.CLyr.Lvl=RLvl;this.CLyr.visibility="inherit";
this.CLyr.onmouseover=RLvl==1&&UnfoldsOnClick?OpenMenuClick:OpenMenu;this.CLyr.onmouseout=CloseMenu;
this.CLyr.captureEvents(Event.MOUSEUP);this.CLyr.onmouseup=RLvl==1&&UnfoldsOnClick&&this.Arr[3]?OpenMenu:GoTo;
this.CLyr.OM=OpenMenu;
this.CLyr.LLyr=this;this.CLyr.resizeTo(Wd,Ht);this.CLyr.Ctnr=MbC;
if(this.Arr[3]){a=RLvl==1&&FirstLineHorizontal?BottomUp?9:3:RightToLeft?6:0;
if(Arrws[a]!=""){this.CLyr.ILyr=new Layer(Arrws[a+1],this.CLyr);this.CLyr.ILyr.visibility="inherit";
this.CLyr.ILyr.top=RLvl==1&&FirstLineHorizontal?BottomUp?2:Ht-Arrws[a+2]-2:(Ht-Arrws[a+2])/2;
this.CLyr.ILyr.left=RightToLeft?2:Wd-Arrws[a+1]-2;this.CLyr.ILyr.width=Arrws[a+1];this.CLyr.ILyr.height=Arrws[a+2];
ImgStr="<img src=\""+Arrws[a]+"\" width=\""+Arrws[a+1]+"\" height=\""+Arrws[a+2]+"\">";
this.CLyr.ILyr.document.write(ImgStr);this.CLyr.ILyr.document.close()}}}
function CreateMenuStructure(MNm,No,Mcllr){
status="Building menu";RLvl++;
var i,NOs,Mbr,W=0,H=0,PMb=null,WMnu=MNm+"1",MWd=eval(WMnu+"[5]"),MHt=eval(WMnu+"[4]"),Lctn=RLvl==1?FLoc:ScLoc;
var BRW=RLvl==1?BorderWidthMain:BorderWidthSub,BTWn=RLvl==1?BorderBtwnMain:BorderBtwnSub;
if(RLvl==1&&FirstLineHorizontal){
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);W=eval(WMnu+"[5]")?W+eval(WMnu+"[5]"):W+MWd}
W=BTWn?W+(No+1)*BRW:W+2*BRW;H=MHt+2*BRW}
else{for(i=1;i<No+1;i++){WMnu=MNm+eval(i);H=eval(WMnu+"[4]")?H+eval(WMnu+"[4]"):H+MHt}
H=BTWn?H+(No+1)*BRW:H+2*BRW;W=MWd+2*BRW}
if(DomYes){var MbC=Lctn.document.createElement("div");MbC.style.position="absolute";MbC.style.visibility="hidden";Lctn.document.getElementById("navigationMenu").appendChild(MbC)}
else{if(Nav4)var MbC=new Layer(W,Lctn);
else{WMnu+="c";Lctn.document.body.insertAdjacentHTML("AfterBegin","<div id=\""+WMnu+"\" style=\"visibility:hidden; position:absolute;\"><\/div>");
var MbC=Lctn.document.all[WMnu]}}
MbC.SetUp=CntnrSetUp;MbC.SetUp(W,H,No,MNm+"1",Mcllr);
if(Exp4){MbC.InnerString="";
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);MbC.InnerString+="<div id=\""+WMnu+"\" style=\"position:absolute;\"><\/div>"}
MbC.innerHTML=MbC.InnerString}
for(i=1;i<No+1;i++){WMnu=MNm+eval(i);NOs=eval(WMnu+"[3]");
W=RLvl==1&&FirstLineHorizontal?eval(WMnu+"[5]")?eval(WMnu+"[5]"):MWd:MWd;
H=RLvl==1&&FirstLineHorizontal?MHt:eval(WMnu+"[4]")?eval(WMnu+"[4]"):MHt;
if(DomYes){Mbr=Lctn.document.createElement("div"); Mbr.style.position="absolute";Mbr.style.visibility="inherit";MbC.appendChild(Mbr)}
else Mbr=Nav4?new Layer(W,MbC):Lctn.document.all[WMnu];
Mbr.Arr=eval(WMnu);
Mbr.SetUp=Nav4?NavMbrSetUp:MbrSetUp;Mbr.SetUp(MbC,PMb,WMnu,W,H,NOs);
if(NOs&&!BuildOnDemand){Mbr.CCn=CreateMenuStructure(WMnu+"_",NOs,Mbr)}
PMb=Mbr}
MbC.FrstMbr=Mbr;
RLvl--;
return(MbC)}
function CreateMenuStructureAgain(MNm,No){
if(!BuildOnDemand){
var i,WMnu,NOs,PMb,Mbr=FrstCntnr.FrstMbr;RLvl++;
for(i=No;i>0;i--){WMnu=MNm+eval(i);NOs=eval(WMnu+"[3]");PMb=Mbr;if(NOs)Mbr.CCn=CreateMenuStructure(WMnu+"_",NOs,Mbr);Mbr=Mbr.PrvMbr}
RLvl--}
else{ var Mbr=FrstCntnr.FrstMbr;
while(Mbr){Mbr.CCn=null;Mbr=Mbr.PrvMbr}}}Hi thanks...As you said I am performing only on onload event..only thing i am confused is if i remove the javacript MRHeader.js everything works fine...am totally confused...pls help
Here is my JSP code for my input page
<%@page import="java.util.*" %>
<%@page import="com.ford.mr.*" %>
<HTML>
<HEAD>
<link href="./css/mplstyle.css" rel="STYLESHEET" type="text/css">
<title>Input Frame</title>
<link type="text/css" rel="STYLESHEET" href="./css/classic.css">
<STYLE>
.vis1 { visibility:visible }
.vis2 { visibility:hidden }
</STYLE>
<%--
MRIFValidation.js contains the java script for the following requirement:
1. Setting the current date in date to compare
2. All input frame client validations.
E.g Plant id should not be empty.
--%>
<script type="text/javascript" src="./javascript/MRIFValidation.js"> </script>
<%--
MRR2HandleDropdown.js is the javascript for the input frame server side actions
It has many functions related to drop down populating and rendering the data
to user from server.
--%>
<script language="javascript" src="./javascript/MRR2HandleDropdown.js"> </script>
<%--
MRheader.js is the javascript which displays the header for our application
plus it has an internal call to MRMenuItem.js and menuscript.js which
builds the menu bar for our application
Issue is here - On commenting the below the previously entered user
inputs are displayed correctly. Else they are not displayed.
--%>
<script language="javascript" src="./javascript/MRheader.js"> </script>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
a:visited {
color: #0000FF;
.style1 {font-weight: bold}
.style2 {color: #FF0000}
body {
background-color: #FFFFFF;
-->
</style>
<%--
Declaring all the JSP variables used in the page
These variables are used for holding the session parameters
and are used while setting the selected values in the screen.
--%>
<%!
// HTTPSession object
HttpSession sess;
// To hold session Variables //
// Selected plant index
String plantIndex;
// Selected supplier index
String supplierIndex;
// Selected part index
String partIndex;
// List of plant codes
Vector plantCodes = new Vector();
// List of supplier codes
Vector supplierCodes = new Vector();
// List of part codes
Vector partCodes = new Vector();
// To hold the part description for the selected part
String partDescription;
// List of release numbers matching the selected plant, supplier & part
Vector releaseNumbers = new Vector();
// Type of release - Weekly / Daily
String releaseType;
// Selected release1 index
String release1Index;
// Selected release2 index
String release2Index;
// Holds the issue date 1 corresponding to release 1 selected
String issueDate1;
// Holds the issue date 2 corresponding to release 2 selected
String issueDate2;
// List of matching release numbers to the entered issue date1 (Might be one or two
// in case if amended release exist)
Vector matchingRelease1Number = new Vector();
// List of matching release numbers to the entered issue date2 (Might be one or two
// in case if amended release exist)
Vector matchingRelease2Number = new Vector();
// Size of matchingRelease1Number collection
int matchingRelease1Size = 0;
// Size of matchingRelease2Number collection
int matchingRelease2Size = 0;
// Boolean flags to hold if amended release exists in the release numbers
// matching the issue dates entered by user.
boolean amendedRelease1Exist;
boolean amendedRelease2Exist;
String pageName = "";
%>
<%--
The below code does the following:
1. Fetches the various values available in session
2. Stores the same in various JSP variables for access within the page
--%>
<%
System.out.println("In input frame page");
sess = request.getSession(true);
if(sess != null) {
System.out.println("Session id in input frame: "+ sess.getId());
plantIndex = (String) sess.getAttribute("selectedPlantIndex");
supplierIndex = (String) sess.getAttribute("selectedSupplierIndex");
partIndex = (String) sess.getAttribute("selectedPartIndex");
//plantCodes = (Vector) sess.getAttribute("plantCodes");
supplierCodes = (Vector) sess.getAttribute("supplierCodes");
partCodes = (Vector) sess.getAttribute("partCodes");
partDescription = (String) sess.getAttribute("partDescription");
releaseNumbers = (Vector) sess.getAttribute("releaseNumbers");
releaseType = (String) sess.getAttribute("releaseType");
release1Index = (String) sess.getAttribute("selectedRelease1Index");
release2Index =(String) sess.getAttribute("selectedRelease2Index");
issueDate1 = (String) sess.getAttribute("issueDate1");
issueDate2 = (String) sess.getAttribute("issueDate2");
matchingRelease1Number = (Vector) sess.getAttribute("correspondingRelease1Number");
matchingRelease2Number = (Vector) sess.getAttribute("correspondingRelease2Number");
System.out.println("Displaying values in session *******************");
Enumeration enum = sess.getAttributeNames();
while(enum.hasMoreElements()) {
String elementName = (String) enum.nextElement();
System.out.println("element:"+ elementName+": Value: "+ sess.getAttribute(elementName));
System.out.println("Plant Index JSP variable:"+ plantIndex);
%>
<%--
This code is used for getting the plant codes from
the DB. Currently it is hardcoded.
--%>
<%
MRR2GetPlantCodes obj = new MRR2GetPlantCodes();
plantCodes = obj.getPlantCodes();
%>
<%--
The below two blocks are used to iterate through matchingRelease1Number & matchingRelease2Number
and checks if it has amended release. If yes, sets a boolean flag.
matchingRelease1Number & matchingRelease2Number are two collections which
contains the release number(s) matching the inputted issue date
--%>
<%
// Code to set boolean flag amendedRelease1Exist
if(matchingRelease1Number != null) {
Iterator relIter = matchingRelease1Number.iterator();
while(relIter.hasNext()) {
if( ((String)relIter.next()).endsWith("A") ) {
amendedRelease1Exist = true;
// Code to set boolean flag amendedRelease2Exist
if(matchingRelease2Number != null) {
Iterator relIter = matchingRelease2Number.iterator();
while(relIter.hasNext()) {
if( ((String)relIter.next()).endsWith("A") ) {
amendedRelease2Exist = true;
%>
<%--
The below script has one method fillDropDown which is used for setting the
values of the various I/P controls to user selected values:
It sets the below selected values:
1. Plant Index, Supplier Index, Part Index, Part description
2. Release Type (Daily / weekly)
3. Release 1 Index, Release 2 Index
4. Issue date1 & Issue date2
--%>
<script language="javascript">
function fillDropDown(field) {
with(field) {
var partD = "<%=partDescription%>"
<% System.out.println("Loading the index values in input frame......");%>
// inputform.country.selectedIndex = inputform.hiddencountry.value
// Loading plant Index, supplier Index, part index and part description to selected values
<% if(plantIndex != null && !plantIndex.equals("")) {%>
inputframe.plant.selectedIndex = "<%=Integer.parseInt(plantIndex)%>"
<% System.out.println("Selected Plant Index after loading:"+plantIndex);} %>
<% if(supplierIndex != null && !supplierIndex.equals("")) { System.out.println("****Supplier Index not equals null..."+Integer.parseInt(supplierIndex)); %>
inputframe.supplier.selectedIndex = "<%=Integer.parseInt(supplierIndex)%>"
<% } %>
<% if(partIndex != null && !partIndex.equals("")) { %>
inputframe.part.selectedIndex = "<%=Integer.parseInt(partIndex)%>"
<% } %>
<% if(partDescription != null && !partDescription.equals("")) { %>
document.getElementById("partDescription").innerHTML = partD
<% } %>
// Making the default release type selection as done by user
<% if(releaseType != null && !"".equals(releaseType)) {
if("daily".equals(releaseType)) {%>
inputframe.release[0].checked = "checked"
<% //isDaily = true;
} else { %>
inputframe.release[1].checked = "checked"
<% //isWeekly = true;
} %>
<%--
The below code is used to fetch the session variable issueDate1
& issueDate2 (based on the release numbers selected)
and sets the same in two text fields.
--%>
<% if(issueDate1 != null && !issueDate1.equals("")) { %>
inputframe.issueDate1.value = "<%=issueDate1%>"
<% } %>
<% if(issueDate2 != null && !issueDate2.equals("")) { %>
inputframe.issueDate2.value = "<%=issueDate2%>"
<% } %>
<%--
Loading release drop down with the value matching with the entered issue date.
Scenario : User enters the issue date and the corresponding release number is
selected in drop down.
Logic 1:
1. Pass the issue date entered by user and get the matching release numbers
from EJB
2. Compare this with the combo collection and get the perfect match.
3. If more than one match is found take the one with amendment by default
4. Else get the matching one
5. Update the selected index of dropdown to this value
--%>
if(inputframe.release1.options.length > 0) {
var matchingCombo1Index = 0
var comboValue
var matchFound = "false"
var size
var amended = false;
var amendedReleaseExist = "<%=amendedRelease1Exist%>";
var firstValue = ""
var secondValue = ""
var amendedValue = ""
var j = 0
<%
if(matchingRelease1Number != null && matchingRelease1Number.size() != 0) {
Iterator iter = matchingRelease1Number.iterator();
matchingRelease1Size = matchingRelease1Number.size(); %>
size = "<%= matchingRelease1Size %>"
//alert("Size of collection to be matched:"+size)
<% while(iter.hasNext()) {
//String matchFound1 = "false";
String relValue = (String)iter.next();%>
//alert("Collection value under iteration:"+ "<%=relValue%>")
amended = "<%=relValue.endsWith("A")%>"
if(amended) {
amendedValue = "<%=relValue%>"
//alert("Collection value under iteration ends with A:"+amended)
var comb = "<%=relValue%>"
j = j + 1
for(var i = 0; i < inputframe.release1.options.length; i++) {
// breaking the for loop when matchingCombo1Index is set greater than 0
/*if(matchFound == true) {
break
comboValue = inputframe.release1.options.value
//alert("Combo value:->"+comboValue)
//alert("rel value in comparison:"+ comb);
if(comboValue == comb) {
if(size == 1) {
matchFound = "true";
if(size == 2) {
if(j == 1)
firstValue = comb
if(j == 2)
secondValue = comb
// The below if block shall be also kept as if((amended||(!amendedReleaseExist)==true)
// The below one perfectly works fine
if(amended || !amendedReleaseExist) {
matchFound = "true";
if(matchFound == "true") {
matchingCombo1Index = i
// alert("Matching combo index set to:"+ matchingCombo1Index)
inputframe.release1.selectedIndex = matchingCombo1Index
if(size == 2)
document.getElementById('errorArea').innerHTML = "There are"
+ " two release numbers for the particular Issue date."
+" Please select either one of the release numbers ("+firstValue+ " or "+secondValue+" )."
+" Default selection in the Release drop down is "+ amendedValue+ "."
matchingCombo1Index = 0;
matchFound = "false";
// Breaking the for loop
break;
<%
sess.removeAttribute("correspondingRelease1Number") ;
}%>
// Setting the selected release 1 index based on the logic done above.
if(matchingCombo1Index == 0) {
<% if(release1Index != null && !release1Index.equals("")) { matchingRelease1Number = null;%>
inputframe.release1.selectedIndex = "<%=Integer.parseInt(release1Index)%>"
<% } %>
<%--
Performing the above logic to select Release2 value
when the user enters issue date2
--%>
if(inputframe.release2.options.length > 0) {
var matchingCombo2Index = 0
var comboValue
var matchFound = "false"
var size
var amended = false;
var amendedReleaseExist = "<%=amendedRelease2Exist%>";
var firstValue = ""
var secondValue = ""
var amendedValue = ""
var j = 0
<%
if(matchingRelease2Number != null && matchingRelease2Number.size() != 0) {
Iterator iter = matchingRelease2Number.iterator();
matchingRelease2Size = matchingRelease2Number.size(); %>
size = "<%= matchingRelease2Size %>"
//alert("Size of collection to be matched:"+size)
<% while(iter.hasNext()) {
String matchFound1 = "false";
String relValue = (String)iter.next();%>
//alert("Collection value under iteration:"+ "<%=relValue%>")
amended = "<%=relValue.endsWith("A")%>"
if(amended) {
amendedValue = "<%=relValue%>"
//alert("Collection value under iteration ends with A:"+amended)
var comb = "<%=relValue%>"
j = j + 1
for(var i = 0; i < inputframe.release2.options.length; i++) {
// breaking the for loop when matchingCombo2Index is set greater than 0
/*if(matchFound == true) {
break
comboValue = inputframe.release2.options[i].value
//alert("Combo value:->"+comboValue)
//alert("rel value in comparison:"+ comb);
if(comboValue == comb) {
if(size == 1) {
matchFound = "true";
if(size == 2) {
if(j == 1)
firstValue = comb
if(j == 2)
secondValue = comb
// The below if block shall be also kept as if((amended||(!amendedReleaseExist)==true)
// The below one perfectly works fine
if(amended || !amendedRelease2Exist) {
matchFound = "true";
if(matchFound == "true") {
matchingCombo2Index = i
// alert("Matching combo index set to:"+ matchingCombo2Index)
inputframe.release2.selectedIndex = matchingCombo2Index
if(size == 2)
document.getElementById('errorArea').innerHTML = "There are"
+ " two release numbers for the particular Issue date."
+" Please select either one of the release numbers ("+firstValue+ " or "+secondValue+" )."
+" Default selection in the Release drop down is "+ amendedValue+ "."
matchingCombo2Index = 0;
matchFound = "false";
// Breaking the for loop
break;
<%
sess.removeAttribute("correspondingRelease2Number") ;
}%>
// Loading the selected release2 value in drop down
if(matchingCombo2Index == 0) {
<% if(release2Index != null && !release2Index.equals("")) { matchingRelease2Number = null;%>
inputframe.release2.selectedIndex = "<%=Integer.parseInt(release2Index)%>"
<% } %>
} // end of WITH
Logic 2: Not used
1. Pass the issue date entered by user and get the matching release numbers
2. Get the release numbers from session.
3. if release type is daily get the daily release numbers else get weekly release numbers
4. Compare the matching release numbers with daily / weekly release numbers collection
5. Find the match and update the selected index of drop down to this value
}// end of function
</script>
</HEAD>
<%-- Calling the two methods onload event of body --%>
<BODY onload="setCurrentDate(this);fillDropDown(this)"> -
Function error! pls help.
Here is the code:
CREATE OR REPLACE FUNCTION id_is_good
(i_student_id IN NUMBER)
RETURN BOOLEAN
AS
v_id_cnt NUMBER;
BEGIN
SELECT COUNT(*)
INTO v_id_cnt
FROM student
WHERE student_id = i_student_id;
RETURN 1 = v_id_cnt;
EXCEPTION
WHEN OTHERS
THEN
RETURN FALSE;
END id_is_good;
Error report:
ORA-06550: line 5, column 20:
PL/SQL: ORA-00904: "I_STUDENT_ID": invalid identifier
ORA-06550: line 2, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 6, column 1:
PLS-00372: In a procedure, RETURN statement cannot contain an expression
ORA-06550: line 6, column 1:
PL/SQL: Statement ignored
ORA-06550: line 10, column 1:
PLS-00372: In a procedure, RETURN statement cannot contain an expression
ORA-06550: line 10, column 1:
PL/SQL: Statement ignored
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
This function run troubleless however it can not run troubleless in my computer, I have database though, I mean my database is ok, and i use sql developer but i dont understand why this code cant run good?? pls help me.
thanksRETURN BOOLEANPerhaps you should read Oracle Doc about returning boolean value in SQL.
Check the following link ->
http://asktom.oracle.com/pls/asktom/f?p=100:11:0::NO::P11_QUESTION_ID:6263249199595
Your solution might be something like this if you want to return boolean ->
CREATE OR REPLACE FUNCTION id_is_good(i_student_id IN NUMBER)
RETURN BOOLEAN
IS
v_id_cnt NUMBER;
BEGIN
SELECT COUNT(*)
INTO v_id_cnt
FROM student
WHERE student_id = i_student_id;
IF v_id_cnt > 0 THEN
RETURN TRUE;
ELSE
RETURN FALSE;
END IF;
EXCEPTION
WHEN OTHERS THEN
RETURN FALSE;
END id_is_good;Or, if you want to return the value then ->
CREATE OR REPLACE FUNCTION id_is_good(i_student_id IN NUMBER)
RETURN NUMBER
IS
v_id_cnt NUMBER;
BEGIN
SELECT COUNT(*)
INTO v_id_cnt
FROM student
WHERE student_id = i_student_id;
RETURN v_id_cnt;
EXCEPTION
WHEN OTHERS THEN
RETURN 0;
END id_is_good;Hope this will help.
Regards.
Satyaki De. -
Gentlemen,
Me and my wife r sharing the same Apple ID, with the conversion to IOS7 all of the sended and received iMessages on my phone comes in also on my wife's phone! Tried all kind of things, pls help
MarcoAre you both using the same Apple ID?
What do you have here:
Settings > Phone > My Number > ? -
Hi All
I have strucked with code pls help....
How can i check the codition in java server faces.....?
like in my Application when user provides the in put like some state name in the next page i have to display some url for that state .......if he provide some other state name it will be different url .....pls help me how can i do that,,,,,,???
thanks in advance..There are certainly ways to do that. E.g. using the rendered attribute, using conditional statements in EL, using a specialized getter for that (lazily loaded if necessary), etcetera. But your functional requirement is unclear, so I can't go in detail with that.
In the future, please try to write normal English sentences. Don't write like SMS talk and save the periods and commas. The more effort you put in your question, the more chance you will be taken for serious and the more effort others will post in their answers.
Also, in the future, JSF related questions should be posted in the JSF forum.
Edited by: BalusC on 12-aug-2008 7:47
Maybe you are looking for
-
WBS Field in Asset Master Record
Hi All, Currently we are working in 4.6 C version. The requirement of the client is they want the Field WBS to be populated in asset Master Record under the origin Tab or Time Dependent. The standard functionality is available in ECC6 Could some body
-
Can I add a Second Video card to my power mac g5
Hi all, I have a Dual 2.5GHz PowerPC G5. is it possible to add a second video card to this system. I want to have the possibility of having 3-4 displays. if it can be done.. do I need a pci or pcix card and can someone recomend one that is available
-
Please help meeee!! Problems with library and syncing on new laptop
Hi I've bought a new laptop and want to start using itunes on the new one, however: Problem 1- Even though I've enabled both devices and have clicked on the home sharing, only the songs I have purchased from itunes show in my library and playlists (I
-
Strange behaviour when setting client_info and module in v$session
Hello, I've tried to set the CLIENT_INFO field in V$SESSION using DBMS_APPLICATION_INFO.SET_CLIENT_INFO but found a strange behaviour. Normally the forms modules seems to set the field MODULE in V$SESSION to its name. If I use DBMS_APPLICATION_INFO.S
-
Jms_provider service not starting up in Visual admin
I am pretty much a novice in EP issue resolution. Have issue on EP 6.0- after upgrade to SP 16 Patch level 1. JMS provider service does not start up and have host of issues due to this. In visual administrator i cannot see the runtime tab under jms_p