Java.util.TreeMap
hi,
We have a list of key,value pairs of state codes and state names implemented using TreeMap. The list is sort based on the key value but in the display when getting the values some of them are out of order.
say the key, value pair - sorted on values (as desired to be seen in listbox)
NE,Nebraska
NV,Nevada
NH,New Hampshire
NJ,New Jersey
NM,New Mexico
NY,New York
NC,North Carolina
ND,North Dakota
but the TreeMap sorts on the key and while getting the values on the UI, it is
North Carolina
North Dakota
Nebraska
New Hampshire
New Jersey
New Mexico
Nevada
New York
Is there a way to get the treeMap sorted on the values ?
Don't use strings. Use an object that contains both the abbreviation and the full name of the state. Have the toString() method return the full name... never mind, like this:public class USState implements Comparable {
private String code;
private String name;
public USState(String pCode, String pName) {
code = pCode;
name = pName;
public String toString() {
return name;
public String getStateCode() {
return code;
public int compareTo(Object other) {
that = (USState) other;
return this.name.compareTo(that.name);
public boolean equals(Object other) {
that = (USState) other;
return this.name.equals(that.name);
public int hashCode() {
return name.hashCode();
}Then you can use "NC" as the key in your Map and new USState("NC", "North Carolina") as the value. It doesn't need to be a TreeMap because you don't need the list sorted by state code. You can sort the values set of your Map and you'll have the states in alphabetic order by name along with their abbreviations.
Similar Messages
-
Obtaining keys from java.util.TreeMap values (help)
I don't know how i can obtain the keys from the values in the java.util.TreeMap. I can iterate through the key-values collection, but i don't know how i can specify a value to obtain a key.
That's because Maps map keys to values, not the other way around. If you want to see what key(s) (there may be none or many) map to a particular value, you must examine all values in the Map. You could instead have two Maps, one to map keys to values and the other to map values to keys.
-
Cannot extract Zip file with Winzip after zipping with java.util.zip
Hi all,
I write a class for zip and unzip the text files together which can be zip and unzip successfully with Java platform. However, I cannot extract the zip file with Winzip or even WinRAR after zipping with Java platform.
Please help to comment, thanks~
Below is the code:
=====================================================================
package myapp.util;
import java.io.* ;
import java.util.TreeMap ;
import java.util.zip.* ;
import myapp.exception.UserException ;
public class CompressionUtil {
public CompressionUtil() {
super() ;
public void createZip(String zipName, String fileName)
throws ZipException, FileNotFoundException, IOException, UserException {
FileOutputStream fos = null ;
BufferedOutputStream bos = null ;
ZipOutputStream zos = null ;
File file = null ;
try {
file = new File(zipName) ; //new zip file
if (file.isDirectory()) //check if it is a directory
throw new UserException("Invalid zip file ["+zipName+"]") ;
if (file.exists() && !file.canWrite()) //check if it is readonly
throw new UserException("Zip file is ReadOnly ["+zipName+"]") ;
if (file.exists()) //overwrite the existing file
file.delete();
file.createNewFile();
//instantiate the ZipOutputStream
fos = new FileOutputStream(file) ;
bos = new BufferedOutputStream(fos) ;
zos = new ZipOutputStream(bos) ;
this.writeZipFileEntry(zos, fileName); //call to write the file into the zip
zos.finish() ;
catch (ZipException ze) {
throw ze ;
catch (FileNotFoundException fnfe) {
throw fnfe ;
catch (IOException ioe) {
throw ioe ;
catch (UserException ue) {
throw ue ;
finally {
//close all the stream and file
if (fos != null)
fos.close() ;
if (bos != null)
bos.close();
if (zos != null)
zos.close();
if (file != null)
file = null ;
}//end of try-catch-finally
private void writeZipFileEntry(ZipOutputStream zos, String fileName)
throws ZipException, FileNotFoundException, IOException, UserException {
BufferedInputStream bis = null ;
File file = null ;
ZipEntry zentry = null ;
byte[] bArray = null ;
try {
file = new File(fileName) ; //instantiate the file
if (!file.exists()) //check if the file is not exist
throw new UserException("No such file ["+fileName+"]") ;
if (file.isDirectory()) //check if the file is a directory
throw new UserException("Invalid file ["+fileName+"]") ;
//instantiate the BufferedInputStream
bis = new BufferedInputStream(new FileInputStream(file)) ;
//Get the content of the file and put into the byte[]
int size = (int) file.length();
if (size == -1)
throw new UserException("Cannot determine the file size [" +fileName + "]");
bArray = new byte[(int) size];
int rb = 0;
int chunk = 0;
while (((int) size - rb) > 0) {
chunk = bis.read(bArray, rb, (int) size - rb);
if (chunk == -1)
break;
rb += chunk;
}//end of while (((int)size - rb) > 0)
//instantiate the CRC32
CRC32 crc = new CRC32() ;
crc.update(bArray, 0, size);
//instantiate the ZipEntry
zentry = new ZipEntry(fileName) ;
zentry.setMethod(ZipEntry.STORED) ;
zentry.setSize(size);
zentry.setCrc(crc.getValue());
//write all the info to the ZipOutputStream
zos.putNextEntry(zentry);
zos.write(bArray, 0, size);
zos.closeEntry();
catch (ZipException ze) {
throw ze ;
catch (FileNotFoundException fnfe) {
throw fnfe ;
catch (IOException ioe) {
throw ioe ;
catch (UserException ue) {
throw ue ;
finally {
//close all the stream and file
if (bis != null)
bis.close();
if (file != null)
file = null ;
}//end of try-catch-finally
}Tried~
The problem is still here~ >___<
Anyway, thanks for information sharing~
The message is:
Cannot open file: it does not appear to be a valid archive.
If you downloaded this file, try downloading the file again.
The problem may be here:
if (fos != null)
fos.close() ;
if (bos != null)
bos.close();
if (zos != null)
zos.close();
if (file != null)
file = null ;
The fos is closed before bos so the last buffer is not
saved.
zos.close() is enough. -
Java.util.Map and null key
Hi,
For information, according to the implementation, it is possible to put and get a null key when using a map.
The null key can be added and retrieved when using a HashMap, an exception is thrown for a TreeMap.The documentation for java.util.Map states:
Some map implementations have restrictions on the keys and values they may contain. For example, some implementations prohibit null keys and values, and some have restrictions on the types of their keys. Attempting to insert an ineligible key or value throws an unchecked exception, typically NullPointerException or ClassCastException.The documentation for java.util.TreeMap.put() states:
Throws:
NullPointerException - if the specified key is null and this map uses natural ordering, or its comparator does not permit null keysSo a Map generally may or may not support null keys and/or values and the decision is up to the concrete implementation. TreeMap states that it doesn't support null keys, unless a Comparator is used that permits null keys. -
Sort(java.util.LinkedList java.lang.Object ) doesn't work
Why doesn't this work?
LinkedList<Object> sysPropsKeys = new LinkedList<Object>(System.getProperties().keySet());
Collections.sort(sysPropsKeys);
cannot fnd symbol
symbol : method sort(java.util.LinkedList<java.lang.Object>)
location: class java.util.CollectionsI will admit to not having Java1.5 installed on my machine. Haven't yet had the chance to play with generics, but the above DOES work in 1.4, and SHOULD work in 1.5
Maybe I'm naive but, System.getProperties() returns a Properties object right?
According to the API: http://java.sun.com/j2se/1.5.0/docs/api/java/util/Properties.html: Each key and its corresponding value in the property list is a string.
All the keys SHOULD be strings.
AFAIK string are comparable, and shouldn't throw class cast exceptions
Thus the keys returned from getProperties SHOULD be comparable, and compatible for comparision.
Ok, I can see your point in that some hackers abuse the Properties class by putting non string keys/values into the Properties Map. In that case the code would become more like your above. I'd probably still go with a TreeMap though, rather than a sorted list of keys. Most time you want the keys, you want the values as well. So if the intention is to print out a sorted list of system properties, and their values, keeping it in a map is best.
Just my 2 cents,
evnafets -
When did Java implement --- java.util.Collection
In what year and release date did Java implement java.util.Collection ?
classes:
ArrayList (Java 2), LinkedList (Java 2), Arrays (Java 2), TreeMap (Java 2),
TreeSet (Java 2)
interfaces:
Collection (Java 2), List (Java 2), ListIterator (Java 2),
Comparator (Java 2), Set (Java 2), Map (Java 2), Iterator (Java 2)
Edited by: SadaYama on Sep 24, 2008 6:45 PMEncephalopathic wrote:
tsith wrote:
There's a reason this didn't work out for you last time you asked this...Shame on you for mentioning a great thread without providing a link. I will make up for this egregious deficiency here and now:
[http://forums.sun.com/thread.jspa?threadID=5334215]
Most appreciated, guv - please accept my apologies for the oversight. -
Error while deploying a web service whose return type is java.util.Date
Hi
I have written a simple web service which takes in a date input (java.util.Date) and returns the same date back to the client.
public interface Ping extends Remote
* A simple method that pings the server to test the webservice.
* It sends a datetime to the server which returns the datetime.
* @param pingDateRequest A datetime sent to the server
* @returns The original datetime
public Date ping(Date pingDateRequest) throws RemoteException;
The generation of the Web service related files goes smoothly in JDeveloper 10g. The problem arises when I try to deploy this web service on the Oracle 10g (10.0.3) OC4J standalone. it gives me the following error on the OC4J console :
E:\Oracle\oc4j1003\j2ee\home\application-deployments\Sachin-TradingEngineWS-WS\
WebServices\com\sachin\tradeengine\ws\Ping_Tie.java:57: ping(java.util.Date) in com.sachin.tradeengine.ws.Ping cannot be applied to (java.util.Calendar) _result = ((com.sachin.tradeengine.ws.Ping) getTarget()).ping
(myPing_Type.getDate_1());
^
1 error
04/03/23 17:17:35 Notification ==> Application Deployer for Sachin-TradingEngineWS-WS FAILED: java.lang.InstantiationException: Error compiling :E:\Oracle\oc4j1003\j2ee\home\applications\Sachin-TradingEngineWS-WS\WebServices: Syntax error in source [ 2004-03-23T17:17:35.937GMT+05:30 ]
I read somewhere that the conversion between java to xml datatype and vice versa fails for java.util.Date, so it is better to use java.util.Calendar. When I change the code to return a java.util.Calendar then the JDeveloper prompts me the following failure:
Method Ping: the following parameter types do not have an XML Schema mapping and/or serializer specified : java.util.Calendar.
This forces me to return a String data.
I would appreciate if someone can help me out.
Thanks
Sachin Mathias
Datamatics Ltd.Hi
I got the web service working with some work around. But I am not sure it this approach would be right and good.
I started altogether afresh. I did the following step :
1. Created an Interface (Ping.java) for use in web Service as follows :
public interface Ping extends Remote{
public java.util.Date ping(java.util.Date pingDateRequest)
throws RemoteException;
2. Implemented the above interface in PingImpl.java as follows :
public class PingImpl implements Ping
public java.util.Date ping(java.util.Date pingDateRequest) throws RemoteException {
System.out.println("PingImpl: ping() return datetime = " + pingDateRequest.toString());
return pingDateRequest;
3. Compiled the above 2 java files.
4. Generated a Stateless Java Web Service with the help of JDeveloper. This time the generation was sucessful.(If I had "java.util.Calendar" in place of "java.util.Date" in the java code of the above mentioned files the web service generation would prompt me for error)
5. After the generation of Web Service, I made modification to the Ping interface and its implementing class. In both the files I replaced "java.util.Date" with "java.util.Calendar". The modified java will look as follows :
Ping.Java
=========
public interface Ping extends Remote{
public java.util.Calendar ping(java.util.Calendar pingDateRequest)
throws RemoteException;
PingImpl.Java
================
public class PingImpl implements Ping
public java.util.Calendar ping(java.util.Calendar pingDateRequest) throws RemoteException {
System.out.println("PingImpl: ping() return datetime = " + pingDateRequest.toString());
return pingDateRequest;
6. Now I recompile both the java files.
7. Withour regenerating the Web Service I deploy the Web Service on OC4j 10.0.3 from JDeveloper. This time the deployment was sucessful.(The Deployment fails if I don't follow the step 5.)
8. Now I generated a Stub from JDeveloper and accessed the stub from a client. It works fine. Here if you see the Stub code it takes java.util.Date as a parameter and returns a java.util.Date. (Mind you I am accepting a java.util.Calendar and returning the same in my Web Service interface. Step 5)
The confusing thing is the Serialization and Deserialization of Data from Client java data to Soap message and Soap message to Server java data.
From Client to SOAP :
java.util.Date to datetime
From SOAP to Server :
datetime to java.util.Calendar
From Server to SOAP :
java.util.Calendar to datetime
From SOAP to Client :
datetime to java.util.Date (I am not able to understand this part of the conversion)
Any help or inputs would be appreciated.
Thanks
Sachin Mathias -
Error-java.util.ResourceBundle.throwMissingResourceException
hi all,
im implementing a report for reporting empty filder..
i got an error while running the report in portal.
i got this error..
unexpected error accessing report com.sap.km.reporting.SimpleReport@641ffc: java.util.MissingResourceException: Can't find bundle for base name com.sap.km.reporting.SimpleReport, locale en_IE
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:839)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:729)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:579)
at com.sap.km.reporting.SimpleReport.getDisplayName(SimpleReport.java:68)
at com.sapportals.wcm.repository.manager.reporting.monitor.ReportComponent$ReportWrapper.getDisplayName(ReportComponent.java:294)
at com.sapportals.wcm.repository.manager.reporting.types.RPReportHandler$DisplayNameGen.getProperty(RPReportHandler.java:160)
at com.sapportals.wcm.repository.manager.reporting.types.RPPropHandler.getProperties(RPPropHandler.java:110)
at com.sapportals.wcm.repository.manager.reporting.types.RPPropHandler.getProperties(RPPropHandler.java:143)
at com.sapportals.wcm.repository.manager.reporting.RPPropertyManager.getProperties(RPPropertyManager.java:89)
at com.sapportals.wcm.repository.ResourceImpl.internalGetProperties(ResourceImpl.java:3699)
at com.sapportals.wcm.repository.ResourceImpl.internalGetPropertiesExtended(ResourceImpl.java:1343)
at com.sapportals.wcm.repository.ResourceImpl.getProperties(ResourceImpl.java:1308)
at com.sapportals.wcm.repository.CollectionImpl.getChildren(CollectionImpl.java:383)
at com.sapportals.wcm.service.resourcelistfilter.cm.ResourceListFilter.getChildren(ResourceListFilter.java:425)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.getChildren(InternalTree.java:1868)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.getFirstCallOpenResources(InternalTree.java:1142)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.getFirstCallOpenResources(InternalTree.java:1172)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.buildNewTree(InternalTree.java:704)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.renderTree(InternalTree.java:852)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.render(InternalTree.java:546)
at com.sapportals.wcm.rendering.collection.cm.InternalTree.buildContent(InternalTree.java:2295)
at com.sapportals.wcm.control.util.components.base.BaseCompositeComponent.buildComposition(BaseCompositeComponent.java:196)
at com.sapportals.htmlb.AbstractCompositeComponent.preRender(AbstractCompositeComponent.java:33)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.AbstractCompositeComponent.preRender(AbstractCompositeComponent.java:34)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.htmlb.Container.preRender(Container.java:118)
at com.sapportals.portal.htmlb.PrtContext.render(PrtContext.java:413)
at com.sapportals.htmlb.page.DynPage.doOutput(DynPage.java:237)
at com.sapportals.wcm.portal.component.base.KMControllerDynPage.doOutput(KMControllerDynPage.java:130)
at com.sapportals.htmlb.page.PageProcessor.handleRequest(PageProcessor.java:129)
at com.sapportals.portal.htmlb.page.PageProcessorComponent.doContent(PageProcessorComponent.java:134)
at com.sapportals.wcm.portal.component.base.ControllerComponent.doContent(ControllerComponent.java:73)
at com.sapportals.portal.prt.component.AbstractPortalComponent.serviceDeprecated(AbstractPortalComponent.java:209)
at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:114)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.component.PortalComponentResponse.include(PortalComponentResponse.java:215)
at com.sapportals.portal.prt.pom.PortalNode.service(PortalNode.java:646)
at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:753)
at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)
at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)
at java.security.AccessController.doPrivileged(Native Method)
at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:160)
could anyone provide me a solution for this..
Regards,
VinothSee Error -Can't find bundle ,locale en_US
-
Unable to capture messages from java.util.logging
I have a class called (Caller.java) which invokes a method called foo from another java class(Util.java) using reflection API.Now this method foo logs messages using Java's logger.My requirement is to call foo for 3 times from Caller and capture/redirect the log messages into 3 log files.
But only the first log file is capturing the log messages(from logger) and other two are not ?
Plz suggest if I am doing somethin wrong here ?
Caller.java
package project2;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.lang.reflect.Method;
public class Caller {
public Caller() {
public static void main(String[] args) throws Exception {
Caller caller = new Caller();
for (int i = 0 ;i<3 ;i++ ) {
caller.createLogStream(i);
System.setOut(caller.getPs());
System.setErr(caller.getPs());
/*****************Invoking Util.java*****************************/
Class clas = Class.forName("project2.Util");
Method m = clas.getMethod("foo",null);
Object obj =clas.newInstance();
m.invoke(obj,null);
public void createLogStream(int i) throws FileNotFoundException {
ps = new PrintStream(new File(System.getenv("HOME")+File.separator+"MyLog"+i+".log"));
public void closeLogStream(){
ps.close();
ps = null;
private PrintStream ps = null;
public PrintStream getPs() {
return ps;
} Util.java
package project2;
import java.util.logging.Logger;
public class Util {
Logger logger = null;
public Util() {
logger = Logger.getLogger(this.getClass().getName());
public void foo(){
System.out.println("Hello out stream");
System.err.println("Hello error stream");
logger.info("This is an information");
logger.warning("This is a warning message");
logger.severe("This is fatal!! ");
}First Log file MyLog0.log:
Hello out stream
Hello error stream
Feb 16, 2009 7:55:55 PM project2.Util foo
INFO: This is an information
Feb 16, 2009 7:55:55 PM project2.Util foo
WARNING: This is a warning message
Feb 16, 2009 7:55:55 PM project2.Util foo
SEVERE: This is fatal!!
Feb 16, 2009 7:55:55 PM project2.Util foo
INFO: This is an information
Feb 16, 2009 7:55:55 PM project2.Util foo
WARNING: This is a warning message
Feb 16, 2009 7:55:55 PM project2.Util foo
SEVERE: This is fatal!!
Feb 16, 2009 7:55:55 PM project2.Util foo
INFO: This is an information
Feb 16, 2009 7:55:55 PM project2.Util foo
WARNING: This is a warning message
Feb 16, 2009 7:55:55 PM project2.Util foo
SEVERE: This is fatal!! Other 2 log files have only this much
Hello out stream
Hello error streamA stale Connection Factory or Connection Handle may be used in SOA 11g
Regards,
Anuj -
Using List Class in java.awt / java.util ?
have a program that:
import java.util.*;
List list = new LinkedList();
list = new ArrayList();
... read a file and add elements to array
use a static setter
StaticGettersSetters.setArray(list);
next program:
import java.awt.*;
public static java.util.List queryArray =
StaticGettersSetters.getArray();
If I don't define queryArray with the package and class, the compiler
gives an error that the List class in java.awt is invalid for queryArray.
If I import the util package, import java.util.*; , the compiler
gives an error that the list class is ambiguous.
Question:
If you using a class that exists in multiple packages, is the above declaration of queryArray the only way to declare it ?
Just curious...
Thanks for your help,
YAM-SSMSo what you have to do is explicitly tell the compiler which one you really want by spelling out the fully-resolved class name:
import java.awt.*;
import java.sql.*;
import java.util.*;
public class ClashTest
public static void main(String [] args)
java.util.Date today = new java.util.Date();
java.util.List argsList = Arrays.asList(args);
System.out.println(today);
System.out.println(argsList);
}No problems here. - MOD -
Hi all,
In the JSP ,if I include the statement <%@ page import="jack.samples.*" %>
it is throwing following error:
This is the Error Message from the Exception:
Server caught unhandled exception from servlet [BaseServlet]: Server caught
unhandled exception from servlet [CategoryDisplay]: Server caught unhandled
exception from servlet [jsp]: Fatal Error: missing resource: java.util.PropertyResourceBundle
I am using Websphere 3.5 on Windows NT.
can somebody please help me what is going wrong here ???I am stopped at
this problem for last 2 days.
Thanks
JackHi,
Finally I was able to resolve after adding this jar file to the classfile
path of the application.
Now,I am trying to access use linkTable.add(new Item(222,"222","333",12.33)) in JSP.
where linkTable is a LinkedList.
It fails giving following error:
This is the Error Message from the Exception:
Server caught unhandled exception from servlet [BaseServlet]: Server caught unhandled exception from servlet : Server caught unhandled exception from servlet [jsp]: Compilation of "softproduct.jsp" failed: d:\ibm\WAServer\temp\default_host\WCSServlets\_jameco_2F_softproduct_2E_jsp_jsp_2.java:824: No constructor matching Item(int, java.lang.String, java.lang.String, double) found in class jack.samples.Item. linkTab.add(new Item(2222,"222","222",22.33)); ^ Note: d:\ibm\WAServer\temp\default_host\WCSServlets\_jameco_2F_softproduct_2E_jsp_jsp_2.java uses or overrides a deprecated API. Recompile with "-deprecation" for details. 1 error, 1 warning
I dont understand why it is failing to add Item object to LinkedList.
can somebody help me in the forum in this regard.
Thanks
Jack -
Is there a Java utility class to help with data management in a desktop UI?
Is there a Java utility class to help with data management in a desktop UI?
I am writing a UI to configure a network device that will be connected to the serial port of the computer while it is being configured. There is no web server or database for my application. The UI has a large number of fields (50+) spread across 16 tabs. I will write the UI in Java FX. It should run inside the browser when launched, and issue commands to the network device through the serial port. A UI has several input fields spread across tabs and one single Submit button. If a field is edited, and the submit button clicked, it issues a command and sends the new datum to the device, retrieves current value and any errors. so if input field has bad data, it is indicated for example, the field has a red border.
Is there a standard design pattern or Java utility class to accomplish the frequently encountered, 'generic' parts of this scenario? lazy loading, submitting only what fields changed, displaying what fields have errors etc. (I dont want to reinvent the wheel if it is already there). Otherwise I can write such a class and share it back here if it is useful.
someone recommended JGoodies Bindings for Swing - will this work well and in FX?Many thanks for the reply.
In the servlet create an Arraylist and in th efor
loop put the insances of the csqabean in this
ArrayList. Exit the for loop and then add the
ArrayList as an attribute to the session.I am making the use of Vector and did the same thing as u mentioned.I am using scriplets...
>
In the jsp retrieve the array list from the session
and in a for loop step through the ArrayList
retrieving each CourseSectionQABean and displaying.
You can do this in a scriptlet but should also check
out the jstl tags.I am able to remove this problem.Thanks again for the suggestion.
AS -
Doubt in java.util.logging
Hi,
I have doubt in logging api provided in java 1.4.
I have a simple program to get the logger and output log into it.
This is how the program looks.
LogTest.java
import java.util.logging.*;
import java.util.*;
public class LogTest {
public static void main(String args[]) {
LogManager manager = LogManager.getLogManager();
Logger l = manager.getLogger("global");
System.out.println(l);
l.severe("Test");
System.out.println(manager.getLogger("ivy"));
System.out.println(manager.getLogger("test"));
I able to get the instance of the global logger, but im not able to get instance of other logger. I getting null for all the other logger
test.properites
=================
handlers = java.util.logging.ConsoleHandler
java.util.logging.ConsoleHandler.level=INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
ivy.level = INFO
.ivy.level = INFO
=================
Compilation Command
java -Djava.util.logging.config.file=C:\WorkSpace\test.properties LogTest Output:
java.util.logging.Logger@13f5d07
Jan 25, 2006 7:19:24 PM LogTest main
SEVERE: Test
null
null
I also tried the same with no config properties, Still im getting the null for logger.
Can I know is there anything that im missing. Is there any property that must be set or do i hav set some config properties.
Thanks,
SivaWell, basically that's part of the formatdefinition
that Properties uses. If you don't do it, then you
aren't really using Properties format and you'llhave
to do your own IO.Thanks for the reply. Is there anyother api or class
that can be used to resolve my problem.What is the problem? A character is escaped, but you will get : when you read the value. You don't have a problem as long as all reading / writing is done through that class. -
when i try to connect to oracle 11g rdbms, following error occurs -->
1. sql developer version - 4.0.3.16 (jdk - jdk1.7.0_51 externally installed) -- newly installed, giving following error when try to connect to oracle 11g rdbms.
2. sql developer version - 3.1.07.42 (jre1.6.0 included) -- used to run earlier.
java.util.UnknownFormatConversionException: Conversion = '0'
at java.util.Formatter.checkText(Formatter.java:2547)
at java.util.Formatter.parse(Formatter.java:2533)
at java.util.Formatter.format(Formatter.java:2469)
at java.util.Formatter.format(Formatter.java:2423)
at java.lang.String.format(String.java:2797)
at oracle.dbtools.raptor.backgroundTask.internal.SimpleRaptorTaskUI.getFormattedTime(SimpleRaptorTaskUI.java:288)
at oracle.dbtools.raptor.backgroundTask.internal.RaptorTaskUI.setState(RaptorTaskUI.java:43)
at oracle.dbtools.raptor.backgroundTask.internal.SimpleRaptorTaskUI.<init>(SimpleRaptorTaskUI.java:63)
at oracle.dbtools.raptor.backgroundTask.internal.RaptorTaskUI.<init>(RaptorTaskUI.java:36)
at oracle.dbtools.raptor.backgroundTask.ui.TaskProgressViewer$4.<init>(TaskProgressViewer.java:346)
at oracle.dbtools.raptor.backgroundTask.ui.TaskProgressViewer.createTaskUI(TaskProgressViewer.java:346)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.initViewers(RaptorTaskManager.java:373)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.access$400(RaptorTaskManager.java:45)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$4.run(RaptorTaskManager.java:299)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.invokeInDispatchThreadIfNeeded(RaptorTaskManager.java:313)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.addTask(RaptorTaskManager.java:302)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.addTask(RaptorTaskManager.java:200)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager.addTask(RaptorTaskManager.java:161)
at oracle.dbtools.worksheet.editor.OpenWorksheetWizard.invoke(OpenWorksheetWizard.java:425)
at oracle.ide.wizard.WizardManager.invokeWizard(WizardManager.java:446)
at oracle.ide.wizard.WizardManager.invokeWizard(WizardManager.java:390)
at oracle.dbtools.worksheet.editor.WorksheetOpenController$1.run(WorksheetOpenController.java:84)
at oracle.dbtools.worksheet.editor.WorksheetOpenController.openWorksheetWizard(WorksheetOpenController.java:90)
at oracle.dbtools.worksheet.editor.WorksheetOpenController.handleEvent(WorksheetOpenController.java:49)
at oracle.ide.controller.IdeAction$ControllerDelegatingController.handleEvent(IdeAction.java:1482)
at oracle.ide.controller.IdeAction.performAction(IdeAction.java:663)
at oracle.ide.controller.IdeAction.actionPerformedImpl(IdeAction.java:1153)
at oracle.ide.controller.IdeAction.actionPerformed(IdeAction.java:618)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at oracle.javatools.internal.ui.EventQueueWrapper._dispatchEvent(EventQueueWrapper.java:169)
at oracle.javatools.internal.ui.EventQueueWrapper.dispatchEvent(EventQueueWrapper.java:151)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)Around a month ago, a similar question appeared on Jeff's block... look for checkText in http://www.thatjeffsmith.com/ask-a-question/
There was no resolution there, so (as the SQL Developer code in that area has not changed) I would tend to think it might have something to do with
1. Your Locale affecting the Formatter class's parsing of that pattern; or
2. A bug in the jdk version in use, probably also related to the Locale.
I recommend upgrading to the latest jdk1.7.0_xx update. If that does not solve the issue, then try changing the Locale. -
I have a menuapp to launch many applications, all running in same JVM and i want to add logging information to them, using java.util.logging.
Intention is to redirect the logginginfo to a specific file within the menuapp. Then i want all logging from all applications written in same file. Finally, if needed (but i don't think it is), i will include code to write logging to specific file per app (class). The latter is probably not neccessary because there are tools to analyse the logging-files and allow to select filters on specific classes only.
The applications are in their own packages/jars and contain following logging-code:
// Redirect error output
try {
myHandler = new FileHandler("myLogging.xml",1000000,2);
} catch (IOException e) {
System.out.println("Could not create file. Using the console handler");
myLogger.addHandler(myHandler);
myLogger.info("Our first logging message");
myLogger.severe("Something terrible happened");
...When i launch the menuapplication, it writes info to "myLogging.xml.0"
but when i launch an application, the app writes info to "myLogging.xml.0.1"
I already tried to leave out the creation of a new Filehandler (try/catch block in code above) but it doesn't help.
Is it possible to write loginfo to same specific file?You should open/close it somehow at every write from different processes.
But I personally prefer different file names to your forced merging, though.
Maybe you are looking for
-
How do I install individual driver of Killer LAN without its Network Management application?
I found sometimes the Network Management application would conflict with other online application, and in other forum an user provided a pure driver package that can solve the problem. Here is the steps: First you can download MSI pure Killer LAN dri
-
ITunes 11.0.1: Can't drag files into playlist unless it's in "List" view mode
If I drag and drop audio files from Finder into a playlist in iTunes 11 (which I do in order to make sure meta tags are correct), they only appear in the playlist if i'm using "List" mode. Using "grid" or "artist list", the files get added to my iTun
-
Batch-Specific Material Units of Measure
Hi all, Can anybody guide me on Batch-Specific Material Units of Measure----Product/proportion units??? What are the settings required & how it works?? Regards, Manish
-
Says my serial number is invalid
downloaded and installed but my serial number is invalid?
-
Junit classcast exception thorws
I am running Junit test, getting error: GroupOptionInputPanelTest.java: public void setUp() { groupOptionInputPanel = new GroupOptionInputPanel(TEST_ID, new Model(new ArrayList()), null); }GroupOptionInputPane