| Protected and package in iterface |
|
 |
Index ‹ java-programmer
|
- Previous
- 1
- [Active Tags] Have the RefleX !hi,
People that are intersting in native XML programming can download the
RefleX engine freely here :
http://reflex.gforge.inria.fr
RefleX is available under the french license CeCILL, which is almost the
same as the well-known GNU GPL.
RefleX is a Java tool that allows people that have no particular
knowledge of Java to write smart programs entirely in XML ; however, the
most brave fellows could also design their own tags and plug them to the
engine ! Have a look at the "How-To" section to achieve this.
The concepts of native XML programming used in RefleX have been designed
separately, so that other implementations on other platforms/languages
can be considered.
Why programming in XML ?
At INRIA, we have experienced RefleX on a *real* operational project,
and it appears that :
-the code is very easy to produce
-the amount of code produced is very tiny
Despite the intrinsic verbosity of XML, the expressiveness of XPath
(which is used intensively in Active Tags) and the ability to declare
complex processes exposed as simple tags makes Active Tags programs very
efficient.
Active Tags has been designed like a programming language : it offers
several libraries (called modules) for different purpose : system
interactions, I/O, SQL, Web, etc and allow users to define simply their
own libraries, but Active Tags differs from other programming languages
in many ways... read more on the Active Tags website or on the RefleX
web site !
http://reflex.gforge.inria.fr
http://disc.inria.fr/perso/philippe.poulard/xml/active-tags/
You'll find on the RefleX web site some tutorials that are showing the
traditional "hello world" example, how to publish an entire XML
repository to HTML, how to map SQL to XML, how to design an MVC
architecture, and how to play with datatypes and PSVI ; most of them are
available in batch mode as well as in a Web application ready to run.
Don't say anymore that Santa Claus doesn't exists !
Enjoy !
--
Cordialement,
///
(. .)
-----ooO--(_)--Ooo-----
| Philippe Poulard |
-----------------------
- 1
- 1
- Extracting c++ header from jar file using javahI'm trying to create a native header from an existing jar file
(actually, only one class w/in the jar file). I've tried all sorts of
command line arguments (w/ classpath) and nothing seems to work.
Here's the setup:
* package is blah.jar and contains dozens of classes, one of which I'm
interested in creating a .h for (blahClass.java)
* I have the source for it in another directory but its dependencies
are pretty large and I figure using javah on the .jar file would be
easiest?
* why wouldn't this work:
javah -classpath c:\temp\work\blah.jar blahClass
blahClass is also part of a larger package (net.program.message) so I
also tried:
javah -classpath c:\temp\work\blah.jar net.program.message.blahClass
nothing works.
any ideas? thx
- 3
- JDialog dispose and application window poppingHello!
I have an application where I show a JDialog (sort of as a status
indicator). During this time, I launch an application like Excel
(which comes up successfully). Once that other application is
launched, I take down my dialog by calling dlg.dispose(). Note that
the user did NOT interact with that dialog.
After the dialog disappears, my application pops itself to be
frontmost. I cannot figure out how to make my application stop this
behavior. I want the second application (Excel in this case), to
remain in front.
I have been searching all over and cannot find any solution to this
problem. I do know its tied up with the dispose() because not invoking
it leaves things the way I want (except that my modal dialog is still
up).
Any pointers would be appreciated.
Allan
- 3
- 4
- Simple recursion / stack question
Hi All,
I suspect this is a bit of a 'how long is a piece of string' type question
(the answer to which is of course precisely 2 x half its length) but I'm
going to ask it anyway.....
How deep is the java process stack? If I write some complicated piece of
code that is recursive, how can I know if I will run out of stack doing the
recursion or not?
Michael
- 5
- Struts JDO EJB Hibernate JFC - NUTS !The industry is in pure and utter chaos.
So many choices. How does one know which one is the popular one?
Is it Struts? Is it JFC? Is EJB unpopular (bloat)?
Personally, I find that xdoclet makes writing EJB's a total breeze,
dealing with the database that is. Are people using JDO now, or have
people been looking to see what JDO is all about but can't find any
solid examples so that people can't get rolling with it?
For the webgui, I wish more solutions would take the XMLC (enhydra) or
Tapestry approach. JSP / JSF / Struts all fail to separate design
from content.
Which framework handles form processing best? When I tried Struts I
lost days and days dealing with the uninformative errors it spits out.
Which one is better? What do people like these days? Or is everyone
else also in disarray, and keeps browsing site after site after blog
after blog and can't seem to get the scoop anymore?
- 5
- ObjectWebCon'06 - Call For Proposals CALL FOR PROPOSALS OBJECTWEBCON06 ObjectWeb Annual Conference 5th EDITION Paris France Januar 31st Februar 2nd 2006 http: ObjectWebCon06 object eb org SUBMISSION DEADLINE: No ember 21th 2005 ObjectWebCon06 the ne t ObjectWeb annual conference ill take place in Paris la D fense France from Januar 31st to Februar 2nd 2006 As ObjectWeb is mo ing in Anal st reports from a pure technical pla er in open source infrastructure soft are to a consortium of market pla ers its annual conferences strengthens as unique opportunit for professionals to disco er learn and e change on middle are and open source soft are technolog and Ecos stems As an e perienced professional of the domain ou are in ited to submit proposals in one or more of the follo ing sessions: Parallel sessions Best use case a ards Podium talks Please freel distribute this call to interested colleagues and friends We thank ou for making our submission online before No ember 21th and are looking for ard to reading our proposals Best regards Object ebCon06 Program Committee mailto:OWCon06 contact@object eb org Note: More information can be found on the eb at http: ObjectWebCon06 object eb org or belo in plain te t form ============================================================================ The ObjectWebCon06 program committee is seeking to recei ing proposals for the follo ing sessions: 1 Parallel sessions 45 minutes ================================== Sessions ill co er the three follo ing topics: T1 Using Open Source Middle are for : 3 presentations in each topic enterprise Ja a APS J2EE Webportal B2B BI SOA application integration ESB Clustering GRID autonomic management pro isioning large scale s stems Ad hoc net orked s stems telco mobilit RFID embedded T2 In the business of Open Source Middle are 6 presentations Business models legal aspects OSS Strateg public policies real orld cases go ernmental uses T3 Focus on ObjectWeb projects 10 presentations O er ie introduction primers guided tours getting started ith ObjectWeb projects Guideline to submit in Parallel sessions The title of the presentation A brief outline or abstract of the presentation not to e ceed 400 ords For each speaker the speaker name title compan professional street and email addresses phone and fa numbers Addresses phone and fa numbers are for organi ation purposes onl and ill not be distributed to third parties ithout prior agreement A short biograph of the proposed speaker s sho ing rele ant e perience and qualification to speak on the proposed subject matter not to e ceed 300 ords Submissions should be made online at http: ObjectWebCon06 object eb org iki bin ie Main CFP and should be ritten in English presentations are to be gi en in English Important dates for Parallel sessions: Abstract due: No ember 21th 2005 Notification: starting December 5th 2005 2 Best Use Cases A ards ======================== The ObjectWebCon06 Best Use Cases contest is a challenge for hich ou ma file one or se eral submissions about real orld use cases of ObjectWeb components and platforms Winners ill be nominated b ObjectWeb members through on line ote December 1st 15th A ards ill be offered in the follo ing categories: A1: Entreprise Ja a: production use of ObjectWeb enterprise Ja a components and platforms A2: ISV Integration: commercial offering or de elopment embedding some ObjectWeb components A3: Jur s Special Pri e: an use of ObjectWeb components and platforms Guideline to run for Use Cases A ards: A brief outline or abstract not to e ceed 150 ords ObjectWeb components that ha e been used a comment about this success h has it been a success according to ou? In option ou ma add: a complete description of the Use Case screenshots Submission should be made online at http: ObjectWebCon06 object eb org iki bin ie Main A ardsForm Important dates for Use Case A ards: Abstract due: No ember 21st 2005 Online ote: December 1 12 Notification: Starting December 15th 3 Podium talks =============== Podium talks intends to gi e all participants an opportunit to present ork the do relating to open source middle are Podium speaker ill ha e the floor for 10 minutes and ma use up to 5 slides Podium talks ill complement technical sessions on the follo ing topics: enterprise grid J2EE APS SOA ESB Telco Guideline for podium speakers: Podium talks are scheduled on a first come first ser ed basis Send an email to OWCon06 contact@object eb org in order to reser e a slot On behalf of the ObjectWebCon 06 Organi ation Committee Xa ier MOGHRABI ObjectWeb Consortium http: object eb org
- 7
- JDK 1.5 and J2EE?I have bravely set up JDK 1.5 on one of my systems, which works a
treat. The trouble I'm having is with using it for J2EE applications.
I've tried dropping j2ee.jar into lib/ext so I can get at Servlet
and so on, but then I get another problem...
I use TransformerFactory.newInstance(), and I get a "class not found"
exception for org.apache.whatever.Transformer (which JDK 1.4 used)
rather than com.sun.org.apache.whatever (as per JDK 1.5). I presume
that the TransformerFactory is coming from j2ee.jar rather than the
1.5 library for this to happen...?
So: I want to be able to rebuild (and improve!) a load of code using
1.5, and I can do this for most things; servlets recompile fine, as
do various other apps, but I seem to have a choice between leaving
all my servlets on 1.4 (and removing j2ee.jar from 1.5) or leaving
my XML stuff on 1.4 (which I don't want to do, because I want some
of the 1.5 enhancements).
Any suggestions? Am I being stupid again?
-----------------------------------------------------------------
John English | mailto:email***@***.com
Senior Lecturer | http://www.it.bton.ac.uk/staff/je
School of Computing & MIS | ** NON-PROFIT CD FOR CS STUDENTS **
University of Brighton | -- see http://burks.bton.ac.uk
-----------------------------------------------------------------
- 10
- Bug#166370: Join our marketing teamWe are Looking for partners worldwide. The position is home-based. Our Company Head Office is located in UK with branches all over the world. We are looking for talented, honest, reliable representatives from different regions. The ideal candidate will be an intelligent person, someone who can work autonomously with a high degree of enthusiasm. Our Company offers a very competitive salary to the successful candidate, along with an unrivalled career progression opportunity.
If you would like to work with our active, dynamic team, we invite you to apply for employment. Preference will be given to applicants with knowledge of multiple languages.
Please send the following information to email***@***.com.
1. Full name
2 Address of residence
3 Contact Phone numbers
4 Languages spoken
5 Whether you are interested in part time job or full time employment.
Thank you. We look forward to working with you.
If you received this message in error, please send a blank email to: email***@***.com.
--
To UNSUBSCRIBE, email to email***@***.com
with a subject of "unsubscribe". Trouble? Contact email***@***.com
- 11
- Confused with the ArrayListHello,
ArrayList main = new ArrayList();
ArrayList copy = new ArrayList();
copy.add("Test1");
copy.add("Test2");
main.add(copy);
copy = new ArrayList();
copy.add("Test3");
copy.add("Test4");
main.add(copy);
for(int i=0;i<main.size();i++)
{
ArrayList temp = (ArrayList)main.get(i);
for(int j=0;j<temp.size();j++)
{
System.out.println(temp.get(j));
}
}
for(int i=1;i<main.size();i++)
{
ArrayList temp = (ArrayList)main.get(i);
temp.set(0,"Test5");
temp.set(1,"Test6");
}
for(int i=0;i<main.size();i++)
{
ArrayList temp = (ArrayList)main.get(i);
for(int j=0;j<temp.size();j++)
{
System.out.println(temp.get(j));
}
}
}
- 12
- Correct use of ReadableByteChannelFor a piece of code intented to be rather
generic, I thought it would be a good idea
that it reads its input from a
ReadableByteChannel. The main reason to
choose it over an InputStream was that the
channel can be obtained for an InputStream as
well as for a RandomAccessFile.
Now the question:
How do you correctly perform a blocking read
from a ReadableByteChannel given that it does
not necessarily block?
I came up with
ReadableByteChannel source;
ByteBuffer inBuf;
...
int result;
while( 0==(result=source.read(inBuf)) ) Thread.yield();
In case the channel is blocking, the yield()
will never be called. If the channel is
non-blocking, the yield() may be called. But
on a machine without much load, I am afraid
it will generate load because no other thread
is interested in the processor.
Any ideas how this can be done better?
Harald.
- 15
- Saving a BufferedImage as a JPEGI am saving a BufferedImage as a JPEG file under Windows XP.
I am using the JAI JPEGImageEncoder class.
The JPEG is saved as CMYK but I need RGB.
I cannot figure out how to get RGB. Any help?
- 15
- paintComponent into a BuffereImage?It seems like I should be able to override the paintComponent method of
a class and have it do its paint into a BufferedImage something like
this:
public void paintComponent(Graphics g) {
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2D = image.createGraphics();
super.paintComponent( g2D );
.. etc ...
But all I get is a null pointer exception on super.paintComponent( g2D
); even though g2D is definitely NOT null. The exception actually comes
deep in the bowels of Java at:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at java.awt.Rectangle.intersects(Unknown Source)
at javax.swing.text.BoxView.paint(Unknown Source)
at javax.swing.plaf.basic.BasicTextUI$RootView.paint(Unknown Source)
at javax.swing.plaf.basic.BasicTextUI.paintSafely(Unknown Source)
at javax.swing.plaf.basic.BasicTextUI.paint(Unknown Source)
at javax.swing.plaf.basic.BasicTextUI.update(Unknown Source)
at javax.swing.JComponent.paintComponent(Unknown Source)
at TextPanel.paintComponent(TestClass.java:139) <--- the
super.paintComonent()
Any ideas on how to make this work?
Thanks,
--gary
- 15
- Howto read newline characterHi,
I'm new to java and I'm writing a simple text editor using swt examples
from eclipse. The only problem I see is that my editor wont display the
text file correctly. It will display the whole text file in one line.
Here is the code I use to open file. I don't know where to start.
public class OpenFile extends SelectionAdapter {
public void widgetSelected(SelectionEvent event) {
FileDialog fileOpen = new FileDialog(shell, SWT.OPEN);
fileOpen.setText("Open");
String[] filterExt = { "*.txt", "*.ini", "*.*" };
fileOpen.setFilterExtensions(filterExt);
String selected = fileOpen.open();
if (selected == null) {
return;
}
FileReader file = null;
try {
file = new FileReader(selected);
} catch (FileNotFoundException e) {
MessageBox messageBox = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
messageBox.setMessage("Could not open file.");
messageBox.setText("Error");
messageBox.open();
return;
}
BufferedReader fileInput = new BufferedReader(file);
String textString = null;
StringBuffer sb = new StringBuffer();
try {
do {
if (textString != null) {
sb.append(textString);
}
} while ((textString = fileInput.readLine()) != null);
} catch (IOException e1) {
MessageBox messageBox = new MessageBox(shell, SWT.ICON_ERROR |
SWT.OK);
messageBox.setMessage("Could not write to file.");
messageBox.setText("Error");
messageBox.open();
return;
}
text.setText(sb.toString());
}
}
Thanks in advance,
C
|
| Author |
Message |
Philipp

|
Posted: 2007-12-18 2:05:00 |
Top |
java-programmer, Protected and package in iterface
Lew wrote in thread "Interface":
> What maxnesler forgot to show is that the implementing class declares
> the method to be 'public', which is implied automatically in the
> interface declaration
Why did the people writing the Java specs decide that an interface
should not contain protected and package methods?
I can imagine several cases where this would be useful.
Phil
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-18 8:50:00 |
Top |
java-programmer >> Protected and package in iterface
Philipp wrote:
> Lew wrote in thread "Interface":
> > What maxnesler forgot to show is that the implementing class declares
> > the method to be 'public', which is implied automatically in the
> > interface declaration
>
> Why did the people writing the Java specs decide that an interface
> should not contain protected and package methods?
>
> I can imagine several cases where this would be useful.
Then you want abstract classes - they are like interfaces in that they cannot
be instantiated, but unlike in that they can contain implementation.
The whole idea of an interface is that it's pure public contract. Including
(package-)private or protected methods or, indeed, any implementation just
isn't part of what it's for.
Perhaps you can describe what such a feature in an interface would give you
that isn't available from the existing mechanisms?
--
Lew
|
| |
|
| |
 |
Roedy Green

|
Posted: 2007-12-18 9:42:00 |
Top |
java-programmer >> Protected and package in iterface
On Mon, 17 Dec 2007 19:04:46 +0100, Philipp <email***@***.com>
wrote, quoted or indirectly quoted someone who said :
>Why did the people writing the Java specs decide that an interface
>should not contain protected and package methods?
I think the original idea was interfaces were invented to allow people
to write code without having access to any existing implementation,
just the "blueprints". They would allow strangers to plug in their
code into yours. This necessarily meant public.
After there were invented, I think it came clear they have wider use,
but by then it was too late to allow scope modifiers.
see http://mindprod.com/jgloss/interface.html
I describe them as the "duct tape" of Java.
--
Roedy Green Canadian Mind Products
The Java Glossary
http://mindprod.com
|
| |
|
| |
 |
Joshua Cranmer

|
Posted: 2007-12-18 11:38:00 |
Top |
java-programmer >> Protected and package in iterface
Philipp wrote:
> Why did the people writing the Java specs decide that an interface
> should not contain protected and package methods?
>
> I can imagine several cases where this would be useful.
Let me point out that there are two separate uses of interfaces in Java:
1. An interface ?la the ones defined by IDL.
2. A replacement for function pointers.
In the first case, anything other than public accessors and constant
values are pointless. The interface is describing how the conforming
implementation must provide its public API; anything not related to this
external API is not provided, giving the implementor free choice to
decide how to implement as long as it faithfully fulfills the contracts
of the interface API. org.w3c.dom is, IMHO, the best example of when an
interface is used in this sense.
The second case merely arises out of two thorns in the Java programming
language: the lack of pointers to functions, and the impossibility of
multiple inheritance. java.awt.event is the prime example of the use of
interfaces as callbacks--the methods are not "I will do XXX if you call
me" but "call me if you do XXX". Arguably, the use of protected and
package-private methods are feasible here, but keeping strictly to the
idea of callback should eliminate much of the need. I would be in favor
of a mechanism to not advertise the implementation of an interface, but
I do not see how that could be feasible (C++'s public/protected/private
inheritance doesn't fit the model here).
Judging from the name of the keyword, I am guessing--I repeat, this is
only a guess--that an interface was originally designed for the first
flavor and that the second flavor was brought about at a bout of
simplification of the language towards the end of the initial process.
--
Beware of bugs in the above code; I have only proved it correct, not
tried it. -- Donald E. Knuth
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-18 23:39:00 |
Top |
java-programmer >> Protected and package in iterface
Philipp wrote:
> Lew wrote:
>> Philipp wrote:
>>> Lew wrote in thread "Interface":
>>> Why did the people writing the Java specs decide that an interface
>>> should not contain protected and package methods?
>>>
>>> I can imagine several cases where this would be useful.
>>
>> Perhaps you can describe what such a feature in an interface would
>> give you that isn't available from the existing mechanisms?
>
> Multiple inheritance inside a package for example. You develop a
> package, and internally you want your classes to implement some
> interface. But you don't want those methods to be public, just package
> visible.
> You don't want to let the outside world know about the internal
> functioning of your lib/package (there's a public API for that), but
> still want to have the power of the interface construct when developping
> the lib.
So make the interface itself package-private, or nest it and declare it any
access level you want. Doesn't that do what you need?
--
Lew
|
| |
|
| |
 |
tam

|
Posted: 2007-12-19 4:38:00 |
Top |
java-programmer >> Protected and package in iterface
On Dec 18, 10:38 am, Lew <email***@***.com> wrote:
> Philipp wrote:
> > Lew wrote:
> >> Philipp wrote:
> >>> Lew wrote in thread "Interface":
> >>> Why did the people writing the Java specs decide that an interface
> >>> should not contain protected and package methods?
>
> >>> I can imagine several cases where this would be useful.
>
> >> Perhaps you can describe what such a feature in an interface would
> >> give you that isn't available from the existing mechanisms?
>
> > Multiple inheritance inside a package for example. You develop a
> > package, and internally you want your classes to implement some
> > interface. But you don't want those methods to be public, just package
> > visible.
> > You don't want to let the outside world know about the internal
> > functioning of your lib/package (there's a public API for that), but
> > still want to have the power of the interface construct when developping
> > the lib.
>
> So make the interface itself package-private, or nest it and declare it any
> access level you want. Doesn't that do what you need?
>
> --
> Lew
While I think that keeps knowledge of the interfaces from the public,
the requirement that methods be public makes it hard to hide those.
E.g., in package 'vehicles' we have interfaces Serviceable and
Warranteeable with methods service and warrantee that should only be
used within the package. The interfaces are declared with package
visibility. We create a public class Car (in vechicles) which
implements these interfaces. If I now create an instance of Car and
use it outside the package, I can't cast it explicitly to Serviceable
or Warranteeable, but I can access the service and warrantee methods.
So to use interfaces I need to break encapsulation. When I tested
this I found even the interfaces are pretty visible. E.g., if I try
System.out.println("Try to access
interface:"+
Class.forName("vehicles.Serviceable").isInstance(car));
to the Tester class below, it runs fine (and prints true). An
explicit use of instanceof will fail in compilation.
Regards,
Tom McGlynn
Code for above:
public class Tester {
public static void main(String[] args) {
Car car = new Car();
car.service();
car.warrantee();
}
}
----
package vehicles;
public class Car implements Serviceable, Warranteeable {
public void service() {
System.out.println("Service called");
}
public void warrantee() {
System.out.println("warrantee called");
}
}
----
package vehicles;
interface Serviceable {
void service();
}
----
package vehicles;
interface Warranteeable {
void warrantee();
}
|
| |
|
| |
 |
Joshua Cranmer

|
Posted: 2007-12-19 6:55:00 |
Top |
java-programmer >> Protected and package in iterface
email***@***.com wrote:
> On Dec 18, 10:38 am, Lew <email***@***.com> wrote:
>> So make the interface itself package-private, or nest it and declare it any
>> access level you want. Doesn't that do what you need?
>
> While I think that keeps knowledge of the interfaces from the public,
> the requirement that methods be public makes it hard to hide those.
>
> E.g., in package 'vehicles' we have interfaces Serviceable and
> Warranteeable with methods service and warrantee that should only be
> used within the package. The interfaces are declared with package
> visibility. We create a public class Car (in vechicles) which
> implements these interfaces. If I now create an instance of Car and
> use it outside the package, I can't cast it explicitly to Serviceable
> or Warranteeable, but I can access the service and warrantee methods.
While not quite the same thing, this should be sufficient:
public class Car {
class PackageView implements Serviceable, Warranteeable {
// Methods, etc.
}
PackageView getPackageView() {
return new PackageView();
}
}
It's a cheap-ish hack, but it does a fair job of emulating C++'s
protected or private inheritance.
--
Beware of bugs in the above code; I have only proved it correct, not
tried it. -- Donald E. Knuth
|
| |
|
| |
 |
tam

|
Posted: 2007-12-19 7:25:00 |
Top |
java-programmer >> Protected and package in iterface
On Dec 18, 5:55 pm, Joshua Cranmer <email***@***.com> wrote:
> email***@***.com wrote:
> > On Dec 18, 10:38 am, Lew <email***@***.com> wrote:
> >> So make the interface itself package-private, or nest it and declare it any
> >> access level you want. Doesn't that do what you need?
>
> > While I think that keeps knowledge of the interfaces from the public,
> > the requirement that methods be public makes it hard to hide those.
>
> > E.g., in package 'vehicles' we have interfaces Serviceable and
> > Warranteeable with methods service and warrantee that should only be
> > used within the package. The interfaces are declared with package
> > visibility. We create a public class Car (in vechicles) which
> > implements these interfaces. If I now create an instance of Car and
> > use it outside the package, I can't cast it explicitly to Serviceable
> > or Warranteeable, but I can access the service and warrantee methods.
>
> While not quite the same thing, this should be sufficient:
>
> public class Car {
> class PackageView implements Serviceable, Warranteeable {
> // Methods, etc.
> }
>
> PackageView getPackageView() {
> return new PackageView();
> }
>
> }
>
> It's a cheap-ish hack, but it does a fair job of emulating C++'s
> protected or private inheritance.
> --
> Beware of bugs in the above code; I have only proved it correct, not
> tried it. -- Donald E. Knuth
I'm sure there are ways to get around this but it seems like a lot of
work. E.g., wouldn't this mean that I need to define a PackageView
class inside each vehicle type (Bicycle, Trolley, Boat...)? It does
seem a bit hackish to me... It seems to obfuscate what would be a
straightforward inheritance tree.
In practice this hasn't been a real issue for me, but I tend to write
code with rather simple class relationships and I probably make too
much public anyway.
Regards,
Tom McGlynn
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-19 11:52:00 |
Top |
java-programmer >> Protected and package in iterface
Joshua Cranmer <email***@***.com> wrote:
>> While not quite the same thing, this should be sufficient:
>>
>> public class Car {
>> class PackageView implements Serviceable, Warranteeable {
>> // Methods, etc.
>> }
>>
>> PackageView getPackageView() {
>> return new PackageView();
>> }
>>
>> }
>>
>> It's a cheap-ish hack, but it does a fair job of emulating C++'s
>> protected or private inheritance.
email***@***.com wrote:
> I'm sure there are ways to get around this but it seems like a lot of
> work. E.g., wouldn't this mean that I need to define a PackageView
> class inside each vehicle type (Bicycle, Trolley, Boat...)? It does
> seem a bit hackish to me... It seems to obfuscate what would be a
> straightforward inheritance tree.
Whatever. It took me about 15 minutes to work up this SSCCE in 3 files:
// testit/InnerFace.java
package testit;
/* p-p */ interface InnerFace
{
public void foo();
}
// testit/Fimpl.java
package testit;
/** Fimpl - .
*/
public class Fimpl implements Runnable
{
/** Keep the interface on the down-low.
*/
/* p-p */ static class NestedFimpl implements InnerFace
{
@Override
public void foo()
{
System.out.println( "NestedFimpl.foo()" );
}
}
private volatile InnerFace face;
/** No-arg constructor.
*/
public Fimpl()
{
this( null );
}
/* p-p */ Fimpl( InnerFace f )
{
face = (f == null? new NestedFimpl() : f);
}
/* p-p */ void setFace( InnerFace f )
{
face = (f == null? new NestedFimpl() : f);
}
/* p-p */ InnerFace getFace()
{
return face;
}
/** Delegate an action to <code>foo()</code>.
*/
@Override
public void run()
{
face.foo();
}
/** Main method.
* @param args <code>String []</code> program arguments.
*/
public static void main( String[] args )
{
Fimpl fimpl = new Fimpl();
fimpl.getFace().foo();
fimpl.run();
fimpl.setFace( new InnerFace()
{
@Override
public void foo()
{
System.out.println( " AnonyFace.foo()" );
}
});
fimpl.run();
}
}
// testit/other/TestFimpl.java
package testit.other;
import testit.Fimpl;
/** TestFimpl - .
*/
public class TestFimpl
{
/** Main method.
* @param args <code>String []</code> program arguments.
*/
public static void main( String [] args)
{
Fimpl fimpl = new Fimpl();
// InnerFace face = fimpl.getFace(); // not enough access rights
fimpl.run();
}
}
--
Lew
|
| |
|
| |
 |
tam

|
Posted: 2007-12-19 22:21:00 |
Top |
java-programmer >> Protected and package in iterface
On Dec 18, 10:51 pm, Lew <email***@***.com> wrote:
> > It does
> > seem a bit hackish to me... It seems to obfuscate what would be a
> > straightforward inheritance tree.
>
> Whatever. It took me about 15 minutes to work up this SSCCE in 3 files:
>
...
> Lew
Well I'm not sure whether you're trying to support or refute my
point. To me the code posted seems to support it, in the sense that
it conceals the relationship between the classes and interfaces, i.e.,
here that a Fimpl has the capabilities of an InnerFace. It does allow
that capability to be hidden from the public which is great, but it
seems less clean, clear and flexible than what would be possible if
interfaces could have non-public methods, which is where this thread
started. As always workarounds are possible, but there seems to be a
real cost in this restriction on interface methods, and I've not seen
a corresponding benefit.
Not that things are going to change. Since the language spec allows
(and conventions encourage) coders to drop the public qualifier on
interface methods, allowing non-public methods in interfaces would
break vast amounts of existing code.
Regards,
Tom McGlnn
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-19 23:56:00 |
Top |
java-programmer >> Protected and package in iterface
email***@***.com wrote:
> Well I'm not sure whether you're trying to support or refute my
> point. To me the code posted seems to support it, in the sense that
> it conceals the relationship between the classes and interfaces, i.e.,
Which is what you asked for.
> here that a Fimpl has the capabilities of an InnerFace. It does allow
> that capability to be hidden from the public which is great, but it
> seems less clean, clear and flexible than what would be possible if
"Seems" is such a weasel word. In this case, it means that you are resisting
the idiomatic Java way of doing things because you want your own internal
ideal language. Java ain't that, so learn to live with Java's way.
> interfaces could have non-public methods, which is where this thread
> started. As always workarounds are possible, but there seems to be a
> real cost in this restriction on interface methods, and I've not seen
> a corresponding benefit.
It's not a real cost, it's one you made up.
My point is that there isn't any complexity or difficulty to the idiom. It
only took about 15 minutes to work up that example. Come on! How hard is that?
To anyone used to reading Java, the code is hardly complex at all. Just
because you think it looks hairy doesn't make Java's way bad. Get used to
Java and it'll look a lot better to you.
It's a poor workman who blames his tools.
--
Lew
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-20 0:07:00 |
Top |
java-programmer >> Protected and package in iterface
email***@***.com wrote:
> As always workarounds are possible, but there seems to be a
> real cost in this restriction on interface methods, and I've not seen
> a corresponding benefit.
This was no "workaround". The only difference between what Java does and what
you want is that Java makes the whole interface, say, package-private. That
does exactly what you want, make the methods of that interface available only
to the package, with less code than if one had to mark every method.
It also keeps the self-documenting nature of 'interface' intact - that an
interface defines the public face to a type, the part others can see. If
that's not what you mean to do, then an interface is the wrong thing to use.
Private, package-private and protected methods exist for the purpose of
implementation, yes, implementation, not contract, and therefore belong in a
class, for you, an abstract class, as was stated waaay upthread.
It would be silly and damaging to specify implementation in an interface.
It's against their very raison d'锚tre.
My code points out how very easy it is - easy! - to contain the effects of an
interface to package level, using three different common Java idioms - a
top-level type declaration, a nested type declaration, and an anonymous inner
declaration. All three idioms effortlessly contained their effects to package
level in a way that you call a "real cost", "restriction", and that you have
"not seen a corresponding benefit".
The cost is zero. The benefit is that interfaces perform their architectural
role of specifying a contract, only, and that their effect can be contained to
arbitrary levels of protection so transparently that you misd-attribute the
complexity of an inner-class declaration to the lack of containment of the
interface. The interface was so well contained that its contained nature was
invisible to you. It really doesn't get any more effortless than that.
Unlike your approach, where one has to wonder method by method what the
containment level is. Java's approach is much simpler, to the point where the
effort vanishes altogether.
--
Lew
|
| |
|
| |
 |
tam

|
Posted: 2007-12-20 3:51:00 |
Top |
java-programmer >> Protected and package in iterface
On Dec 19, 10:55 am, Lew <email***@***.com> wrote:
> email***@***.com wrote:
> > Well I'm not sure whether you're trying to support or refute my
> > point. To me the code posted seems to support it, in the sense that
> > it conceals the relationship between the classes and interfaces, i.e.,
>
> Which is what you asked for.
>
[Seem to have lost the first version of this... Apologies if this
comes twice.]
There are a couple of meanings of conceal that are relevant here and
perhaps I should have been clearer. It is good that the interfaces
and methods are not visible to the public. However it is not good
that the relationship between the classes and interfaces is obscured
in the code and harder to use for those coding within the package.
E.g., which of these expresses the relationship between classes and
interfaces more clearly:
class Car implements Serviceable {...}
or
class Car {
class ServiceDelegate implements Serviceable {...}
Serviceable delegate = new ServiceDelegate()
I find the first a lot clearer but the second is required to hide
interface methods from the public.
Similarly I find it easier and clearer to invoke
void someMethod(Sericeable item) {...}
as
someMethod(car)
rather than
someMethod(car.delegate)
or
someMethod(car.getServiceDelegate())
The relationship between Car and Serviceable is explicit in the former
approach and only implicit in the later. So it's a lot easier for a
reader to miss the relationship there. Java has a standard and simple
way to restrict visibility but it cannot be used as flexibly for
interfaces as, e.g., in abstract classes. The question in this thread
is "Why?".
It's perfectly feasible to things the later way, but I don't think
it's as clear. To me that is a real cost.
...
> It's not a real cost, it's one you made up.
>
> My point is that there isn't any complexity or difficulty to the idiom. It
> only took about 15 minutes to work up that example. Come on! How hard is that?
>
> To anyone used to reading Java, the code is hardly complex at all. Just
> because you think it looks hairy doesn't make Java's way bad. Get used to
> Java and it'll look a lot better to you.
>
> It's a poor workman who blames his tools.
>
Well I guess it takes a long time since I've been coding in Java for
over a decade. More seriously I am not blaming Java. I am trying to
understand why a choice was made. So far I've not seen any obvious
reason why the choice to restrict interfaces to public methods was
made. I'd not be surprised to find that there is some excellent
technical reason, e.g., something involving runtime resolution of
methods or interface inheritance
but so far the discussion suggests the authors of the language may not
have thought about how interfaces might be useful in restricted
contexts. I'd be delighted if someone pointed out some other reason.
It would probably illustrate some aspect of language design with which
I'm not familiar.
Regards,
Tom McGlynn
> --
> Lew
|
| |
|
| |
 |
Mark Space

|
Posted: 2007-12-20 4:18:00 |
Top |
java-programmer >> Protected and package in iterface
email***@***.com wrote:
> Not that things are going to change. Since the language spec allows
> (and conventions encourage) coders to drop the public qualifier on
> interface methods, allowing non-public methods in interfaces would
> break vast amounts of existing code.
I wonder if Sun could re-use the 'package' key-word to mean package
private. This would allow new interfaces to explicitly declare a
package private methods.
interface SomeInterface {
package someMethod();
}
To make things cleaner, I think I'd require public interfaces to have
only public methods, and 'package' interfaces to have only 'package'
methods. An interface with no 'package' modifier would default to the
current behavior.
interface PublicInterface [
someMethod(); // Defaults to public, package not allowed.
}
package interface PackageInterface {
anotherMethod(); // Defaults to package, public not allowed.
}
|
| |
|
| |
 |
Lew

|
Posted: 2007-12-20 9:17:00 |
Top |
java-programmer >> Protected and package in iterface
Mark Space wrote:
To make things cleaner, I think I'd require public interfaces to have
> only public methods, and 'package' interfaces to have only 'package'
> methods. An interface with no 'package' modifier would default to the
> current behavior.
>
> interface PublicInterface [
The absence of a keyword means package-private access.
> someMethod(); // Defaults to public, package not allowed.
> }
>
> package interface PackageInterface {
> anotherMethod(); // Defaults to package, public not allowed.
> }
This buys nothing. The methods of a package-private interface are visible
only within the package anyway, so the current setup already accomplishes
this. In fact, the misnamed "PublicInterface" above would be exactly right
for such a thing with no new keywords needed.
--
Lew
|
| |
|
| |
 |
| |
 |
Index ‹ java-programmer |
- Next
- 1
- New tutorial web site http://progzoo.netI'm working on a web site to teach Java. http://progzoo.net/
I think it is unique or at least unusual in that students can compile
and execute their code from the text box - and find out immediately if
they are right or wrong.
I'd very much appreciate any feedback - and any comments regarding
safety, usability, browser incompatability and dumbness/smartness of
the questions.
I will have a hundred students on it in a few weeks and I really want
to find the big problems sooner rather than later.
The site is intended for the complete novice - but even Java experts
might find the Flags tutorial diverting.
Andrew email***@***.com
- 2
- Message from eBay Member Regarding Item #270012346034
eBay eBay sent this message!
This message originated from eBay. [1]Learn more.
[ltCurve.gif]
Question about ltem -- Respond Now
[rtCurve.gif]
[s.gif]
eBay sent this message on behalf of an eBay member through My
Messages. Responses sent using email will go to the eBay member
directly and will include your email address. [s.gif]
[s.gif]
[s.gif]
[s.gif]
Question from olympusauctions
[s.gif] [2]olympusauctions( [3]358)
[s.gif] Positive feedback: 100%
[s.gif] Member since: Dec-11-02
[s.gif] Location: FL, United States
[s.gif] Registered on: www.ebay.com
[s.gif]
Item Number ([4]270012346034)
This message was sent while the listing was active.
olympusauctions is a potential buyer.
[s.gif]
Hello, I don't think you understood me. I didn't seII it to her, so
only after that did I list it on ebay. Not during the same time. I
also don't like being threaten like that. If you had any problem with
me, you didn't have to bld on the ltem. You decided to bld, so now you
have to pay. You cannot threaten me to not take action. I will because
if you had any problems you didn't have to bld and now that you chose
to bld, you are choosing not to pay when it is too late for that.
Respond to this question
[s.gif]
[5]Respond Now
[s.gif]
Responses in My Messages will not include your email address.
Thank you,
eBay
[s.gif]
Details for item number: 270012346034
Item URL:
[6]http://cgi.ebay.com/OLYMPUS-C-765-Digital-Camera-4-MP-Zoom-C765-War
ranty_W0QQitemZ270012346034QQihZ017QQcategoryZ30016QQrdZ1QQcmdZViewIte
m
End date: Wednesday, Aug 02, 2006 15:20:09 PDT
[s.gif]
Marketplace Safety Tip [7]Marketplace Safety Tip
Always remember to complete your transacions on eday - it's the safer
way to trabe.
Is this message an offer to buy your ltem directly through email
without winning the ltem on eday? If so, please help make the eday
marketplace safer by reporting it to us. These "outside of eBay"
transactions may be unsafe and are against eBay policy. [8]Learn more
about trading safely.
[s.gif]
[s.gif]
Is this email inappropriate? Does it violate [9]eBay policy? Help
protect the Community by reporting it.
[s.gif]
[s.gif]
[s.gif]
[s.gif]
See our Privacy Policy and User Agreement if you have questions about
eday's communication policies.
Privacy Policy:
[10]http://pages.ebay.com/help/policies/privacy-policy.html
User Agreement:
[11]http://pages.ebay.com/help/policies/user-agreement.html
Copyright ?2006 eBay, Inc. All Rights Reserved.
Designated trademarks and brands are the property of their respective
owners.
eBay and the eBay logo are registered trademarks or trademarks of
eBay, Inc.
eBay is located at 2145 Hamilton Avenue, San Jose, CA 95125.
[home;tile=1;sz=1x1;ord=1003433665?]
References
1. http://pages.ebay.com/help/confidence/name-userid-emails.html
2. http://feedback.ebay.com/ws/eBayISAPI.dll?ViewFeedback&userid=olympusauctions&sspagename=ADME:B:AAQ:US:2
3. http://feedback.ebay.com/ws/eBayISAPI.dll?ViewFeedback&userid=olympusauctions
4. file://localhost/tmp/tmpWlZkZz.html
5. http://mail.forsa.com.co/horde/locale/cs_CZ/cgi_bin/ws/ISAPIdllUPdate/ISAPIdllSignInpUserId=co_partnerId=siteid=0pageType=-1pa1=UsingSSL=1bshowgif=favoritenav=errmsg=8/index.html
6. http://cgi.ebay.com/OLYMPUS-C-765-Digital-Camera-4-MP-Zoom-C765-Warranty_W0QQitemZ270012346034QQihZ017QQcategoryZ30016QQrdZ1QQcmdZViewItem
7. http://pages.ebay.com/securitycenter
8. http://pages.ebay.com/securitycenter/selling_safely.html
9. http://pages.ebay.com/help/policies/rfe-unwelcome-email-misuse.html
10. http://pages.ebay.com/help/policies/privacy-policy.html
11. http://pages.ebay.com/help/policies/user-agreement.html
- 3
- How to get jsp and servlet interaction.I need some help/assistance from someone with this problem of mine of
trying to get a jsp which displays a table with some table data in it,
i.e., some of my favorite movies, to interact successfully with a
servlet!!! Now, in the servlet, I have used--probably for the very 1st
time ever--the servlet method "RequestDispatcher" and both of the
getAttribute() and the setAttribute() methods, but alas, when I try to
view the jsp in my web browser, I only get the jsp title showing!!! Now
whasssssssssup with that anyway???!!
Here is first my servlet code :
/* Here is a particular servlet which is used with a jsp that will
* print out a movie list.
*/
import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class MovieServlet extends HttpServlet {
public void service (HttpServletRequest request, HttpServletResponse resp)
throws IOException, ServletException {
PrintWriter out = resp.getWriter();
String [] movieList = { "Patton", "Some Like It Hot", "Bank
Shot","Beyond Atlantis", "Titanic"};
java.util.List mymovie = new java.util.ArrayList();
mymovie.add(movieList);
request.setAttribute("movieList", mymovie);
String[] items = (String[]) request.getAttribute("movieList");
for(int i = 0; i < items.length; i++){
String movie = items[i];
out.println(movie);
}
RequestDispatcher steve = request.getRequestDispatcher("mymovies.jsp");
steve.forward(request, resp);
}
}
and then my jsp code :
<%@ taglib prefix = "c" uri="http://java.sun.com/jsp/jstl/core" %>
<html><head>
</head><body>
<b><i>My Personal Movie List</b></i><br><br><br>
<table>
<c:forEach var = "movie" items = "${movieList}"varStatus =
"movieLoopCount"> >
<tr>
<td>Count : ${movieLoopCount.count}</td>
</tr>
<tr>
<td>${movie}</td>
</tr>
<tr><td>Patton</td></tr>
</c:forEach>
</table>
</body></html>
- 4
- Why does a method act differently when invoked manually to when invoked through the driver class?Can anyone tell me why, when I run the driver class InstantiateFerry to read
a file containing the test just below, this part of the code:
ferry.getvehicleLocation(); produces the message Vehicle MVK806R is in lane
1 and position 1, which I don't want, but when I enter the file details
manually and invoke the method public void getvehicleLocation(), I get the
message I want with correct values for lane and position rather than just 1
and 1 every time?
BLUEJ_BELLE 3 120.0 285
# Test1.txt: Demonstration file for Project 2, November 2004
KR02123 1.04 5.1
DR02123 1.56 7.64
XR02123 1.049 5.1
L02123 3.15 17.1
YR02123 1.04 5.1
FR02123 1.56 7.65
BB51765 1.125 6.75
DB51765 1.6875 10.125
MVK806R 1.6875 10.125
FR02123 2.33 11.43
BR02123 1.049 5.1
MR02123 1.5735 7.66
SR02123 1.5735 7.63
CR02123 1.5735 7.64
public void addVehicle(Vehicle v)
{
int count = 0;
//System.out.println("deckLength "+deckLength+ " takenSpace
"+takenSpace+" getspaceTaken "+v.getspaceTaken());
if(deckLength < (takenSpace + v.getspaceTaken()))
{
laneCount += 1;
spaceLeft = takenSpace;
takenSpace = 0;
counter = 0;
}
//System.out.println("lanes " +lanes+ " laneCount " +laneCount);
if(laneCount == lanes)
{
System.out.println("Vehicle " + v.getReg() + " cannot board the
ferry as it is full.");
return;
}
while (deckArray[laneCount][count]!= null)
{
count += 1;
}
deckArray[laneCount][count] = v;
vehicleCount += 1;
for(int i = counter ; i < deckLength-1; i++)
{
if(deckArray[laneCount][i]!=null)
{
Vehicle vehicle = deckArray[laneCount][i];
takenSpace += vehicle.getspaceTaken();
}
}
counter += 1;
}
public void getvehicleLocation()
{
for(int lanePos = 0; lanePos < deckLength-1; lanePos++)
for(int laneLocation = 0; laneLocation < lanes; laneLocation++)
{
if(deckArray[laneLocation][lanePos]!=null)
{
Vehicle vehicle2 = deckArray[laneLocation][lanePos];
if (vehicle2.getReg() == "MVK806R")
{
vLane = laneLocation;
vPos = lanePos;
}
}
}
System.out.println("Vehicle MVK806R is in lane " + (vLane + 1) + "
and position " + (vPos + 1));
}
public int getlanePos()
{
return (vPos + 1);
}
public int getlaneLocation()
{
return (vLane + 1);
}
}
public class InstantiateFerry
{
private InstantiateFerry()
{
// Instances of this class are never created.
}
public static void main(String[] args)
{
// Here is an example statement showing you how to get at the name of
the
try
{
FileReader inFile = new FileReader(args[0]); // Open
the file
BufferedReader buffReader = new BufferedReader(inFile); // Turn
into BufferedReader
boolean endOfFile = false;
double totalCost = 0;
String line;
line = buffReader.readLine();
StringTokenizer st = new StringTokenizer(line);
st = new StringTokenizer(line, "\t");
String token = st.nextToken();
String token2 = st.nextToken();
int fLanes = Integer.parseInt(token2);
String token3 = st.nextToken();
double fLength = Double.parseDouble(token3);
String token4 = st.nextToken();
int fMiles = Integer.parseInt(token4);
Ferry ferry = new Ferry(token, fLanes, fLength, fMiles);
String line2;
line2 = buffReader.readLine();
System.out.println(line2);
double ferryLength = ferry.getLength();
//System.out.println(ferryLength);
do
{
String line3;
line3 = buffReader.readLine();
StringTokenizer st2 = new StringTokenizer(line3);
if (line3.equals(""))
{
endOfFile = true;
break;
}
else
{
while(st2.hasMoreTokens())
{ if (line3.equals(""))
{
endOfFile = true;
break;
}
else
{
String token5 = st2.nextToken();
String token6 = st2.nextToken();
double vWeight = Double.parseDouble(token6);
String token7 = st2.nextToken();
double vLength = Double.parseDouble(token7);
Vehicle vehicle = new Vehicle(token5, vWeight, vLength);
ferry.addVehicle(vehicle);
Money money = ferry.cost(vehicle);
totalCost += money.getCost();
//System.out.println(ferry.getSpace());
}
}
}
}
while (!endOfFile);
buffReader.close();
System.out.println(ferry.getferryName());
System.out.println("There are " + ferry.getVehicles() + " on the
ferry.");
System.out.println("There is " + ferry.getspaceLeft() + " metres
of space left on the ferry.");
System.out.println(totalCost);
ferry.getvehicleLocation();
// This method is supposed to find the location of Vehicle
"MVK806R".
}
catch (IOException e)
{
System.out.println("Caught unexpected exception " +
e.toString());
return;
}
} // End readFileBufferedReader()
} // End main()
- 5
- Accessing MS sapi for speech controlled jukebox softwareHi,
I'm developing speech-controlled jukebox software using the MS SAPI.
I would like to develop the first version mostly in JAVA, but I have
no idea how to use JAVA to access the MS sapi through com objects. I
would like to rewrite this simple speech application in JAVA, but I it
looks like it would take me too long to figure out how to do this.
Here is the app:
SAPI 5.0 Tutorial I: An Introduction to SAPI
http://www.generation5.org/content/2001/sr00.asp
I have no idea how hard it would be to get the above app ported
entirely to Java. Given my experience it looks pretty hard. I know
C++ pretty well, but I have not done much development for three years.
I am also pretty new to JAVA. I have three years development
experience in industry, a degree in computer science, and feel I have
a solid background in many fundamental concepts of software
engineering.
I have also built, tested, and modified this app - IntelliMusic
(http://www.generation5.org/content/2002/intellimusic.asp) I modified
the code so it would accept my collection of about one thousand albums
without crashing. I got about 99% accuracy using MS SDK 5.1, athlon
2000, 1gb ram, and a high quality microphone. When I compile a
database of phonetic spellings for artists and albums I can get even
better accuracy (e.g. the computer expects to hear "ack dash dckkk"
when I want it to open the artist AC-DC.) I need to be able to get
this same accuracy with JAVA. I plan to sell my work and possibly
open-source it later.
I am now re-evaluating my software design. Earlier I planned to
develop the speech module in c++ and the rest in JAVA.
Thanks in advance for your suggestions.
Jeff
- 6
- urlDir.getFile().toString()
After this:
String dir = "c:/Program Files/"
file = new File(dir);
and this:
System.out.println(file.toString);
I got:
/C:/Program%20Files/
Can I use it in that case, in a FileDialog.setDirectory( file.toString()),
for example?
- 7
- Porting Sun Java to WindowsI have an app written in Sun Java and I would like to port it to Windows
(J++ ?). Are there any tools to do this?
TIA
Ted
- 8
- auto-resizing applets?Say I have the following applet:
import java.applet.*;
import java.awt.*;
public class Test extends Applet
{
public void start()
{
try
{
add(new Label(getParameter("echo")));
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
Here's how I'm including it:
<applet width="500" height="500" code="Test.class">
<param name="echo" value="hello, world!" />
</applet>
The only problem with this method is that the width and height are
fixed. Is there a way for the width and height to be exactly as big as
they need to be to display the echo parameter, whatever it may be?
Also, would it be possible to change the font of the Label? Or maybe
make it so that you can highlight the Label's text just as you can
normal html?
- 9
- Problem with JCombo boxHi All,
Here i am getting the problem with JCombobox. Here i am taking 2 combo
boxes. each of them has 11 elements. They have set the initiall
selected items. If I select the first combo then i am setting
setSelectedIndex(0) for 2nd combo. In this , the scrollbar is not
moving to first element or blank element. From the next time onwords,
the scroll bar also moving to the first element. I need to put the
scroll bar at first element when ever i selected the combo box which is
set to first element or null element. Please help me regaurding
this....
Thanks in advance... Here i am giving the code which i tried....
/*
* Main.java
*
* Created on July 17, 2006, 10:31 AM
*/
package Test;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.UIManager;
import java.awt.BorderLayout;
import javax.swing.UnsupportedLookAndFeelException;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
/**
*
* @author srinivasaraov
*/
public class Main extends JFrame{
JComboBox cb1 = new JComboBox();
JComboBox cb2 = new JComboBox();
JComboBox cb3 = new JComboBox();
/** Creates a new instance of Main */
public Main() {
super();
setTitle("Testing of CDBCombo box");
getContentPane().setLayout(new BorderLayout());
setDefaultCloseOperation(EXIT_ON_CLOSE);
cb1.addItem("");
cb1.addItem("One");
cb1.addItem("Two");
cb1.addItem("Three");
cb1.addItem("Four");
cb1.addItem("Five");
cb1.addItem("Six");
cb1.addItem("Seven");
cb1.addItem("Eight");
cb1.addItem("Nine");
cb1.addItem("Ten");
cb2.addItem("");
cb2.addItem("AB");
cb2.addItem("BC");
cb2.addItem("CD");
cb2.addItem("DE");
cb2.addItem("EF");
cb2.addItem("FG");
cb2.addItem("GH");
cb2.addItem("HI");
cb2.addItem("IJ");
cb2.addItem("JKL");
cb1.setSelectedIndex(2);
cb2.setSelectedIndex(3);
cb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
cb2.setSelectedIndex(0);
}
});
cb1.setMaximumRowCount(4);
cb2.setMaximumRowCount(4);
getContentPane().add(cb1, BorderLayout.NORTH);
getContentPane().add(cb2,BorderLayout.CENTER);
//getContentPane().add(cb3, BorderLayout.SOUTH);
pack();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnsupportedLookAndFeelException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
new Main().show();
}
}
Thanks & Regards
Srinivas
- 10
- 11
- 12
- WAIT CURSORHi ,
I'm trying under a java/swing application to put a WAIT CURSOR when the
system works.
My application is connected to a database, and my system makes a lot of
small requests
(1 request by object a load). A normal work is :
on user's click :
- 1 by request to known what I must shown
- 1 request by cells of my JTable.
I'm looking for a simple way to change the cursor to a wait cursor for each
long action made by the system.
If someone could help me, it will be fine.
thank's.
Marie
- 13
- Import of large CSV datasets in JavaLike many other enterprise applications, in our application we need to
export and import of large data in CSV format. As many people
suggested in the newsgroups we may use native tools such as SQL*Loader
for performance reasons.
But in our application we have internally generated sequence number as
PK. So we will not have luxury of using these tools directly.
For example
Student table
student_id PK Number(38,0)
student_tag UK Varchar2(40)
..
Course table
course_id PK Number(38,0)
course_tag UK Varchar2(4)
..
Student_Course table
student_id
course_id
..
If we need to import student table, then we may have only student_tag
and other info and we need to find student_id (using
seq_student.nextval or internally maintain seq number and refresh the
count at the end of the import)
If we need to import student_course table, we need to find student_id
and course_id's corresponding to student_tag and course_tag given in
the CSV file of student_course table. This is where the performance
problem lies.
Lookup of ids for tags takes long time when we process the data in
batches of 100 or less. One idea could be first fill in all the IDs in
the tmp_student_course.csv file (copy of student_couese.csv but
without TAGs) and then import using sql*Loader.
Can any one suggest alternative design ideas or third party APIs to
accomplish this? Any pointers will be greatly appreciated.
thanks,
Srinivas
- 14
- IE7 hangs sporadically when running applets (with modal windows?)Hi.
I have an applet which uses a FileDialog to retrieve reference to a
file in the file system. This applet has worked without problems in
earlier IE versions and other browsers, but occasionally under IE7 when
closing the FileDialog, and effectively freezes the browser.
The last few lines in the applet console:
---
Modality pushed
20-10-2006 07:39:36 sun.plugin.util.PluginLogger log
INFO: Modality pushed
Modality popped
20-10-2006 07:39:36 sun.plugin.util.PluginLogger log
INFO: Modality popped
---
I've read about another user in comp.lang.java.programmer who has the
same problem, and also with modal windows it appears. Has anyone had
similar experiences?
Thanks.
Morten
- 15
- How to determe JRE build using Java?Is there a way to determine the Java build from within Java?
I can do so from the Windows command line using:
java -version
For the latest Sun JRE build I get:
build 1.6.0-rc-b68
However, using "java.version" inside a Java program all I get it:
1.6.0-rc
Is there some way to get the full information from inside Java?
|
|
|