Giter Site home page Giter Site logo

vaadin / framework Goto Github PK

View Code? Open in Web Editor NEW
1.8K 143.0 727.0 476.08 MB

Vaadin 6, 7, 8 is a Java framework for modern Java web applications.

Home Page: http://vaadin.com/

License: Other

CSS 0.13% HTML 0.40% JavaScript 0.51% Smarty 0.01% Java 95.57% Shell 0.32% Python 0.13% Batchfile 0.15% SCSS 2.78%
vaadin-framework java vaadin web-application-framework

framework's Introduction

Gitter

Vaadin Framework

Vaadin allows you to build modern web apps efficiently in plain Java, without touching low level web technologies.

This repository serves as an archive of the source code and issue tracking for Vaadin 8 and Vaadin 7. Both use GWT as the base of client-side implementations. Vaadin 8 includes Vaadin 7 compatibility classes. You can find source code and issue tracking for newer, web component based Vaadin versions in vaadin/platform.

The code in this repository reflects the state of Vaadin 8.14.3 and Vaadin 7.7.17, the last releases made available under the Apache-2 license, and will be left as-is.

NOTICE

Starting with versions 7.7.30* and 8.15.0, no new code is being released here, as development now happens in a private repository. However, releases are being published as courtesy notifications to the users who have subscribed to the release feed of this repository. The source code attached to Github releases in this repository reflects the state of code in this respository at time of release. It is NOT the source code of the corresponding Extended Maintenance release.

* Note: 7.7.17 is the last Apache-2 licensed version, however in the beginning of the transition phase extended maintenance version changes to the 7.7 branch were being made here. In order to be in compliance with the license terms, you are only allowed to use 7.7 code up to release 7.7.17.

Vaadin Framework has entered extended maintenance

Vaadin Framework 7 and 8 are now being maintained under a closed-source model by the Vaadin Expertise Team. You are free to continue using Vaadin Framework releases up to 8.14.3 and 7.7.17 as made available through this repository, and you are free to fork and maintain the framework yourself.

  • Vaadin 8 open source maintenance ended in February 2022, extended support is available until February 2032. Starting with version 8.15.0, Vaadin 8 is subject to commercial Vaadin licenses (CVDLv4 from 8.15.0 onward, VCL-1 from 8.19.0 onward, and VCL-2 starting with 8.21.0). The current license is Vaadin Commercial License, version 2.

  • Vaadin 7 open source maintenance ended in Febraury 2019, extended support is available until February 2029. Starting with version 7.7.18, Vaadin 7 is subject to commercial Vaadin licenses (CVDLv4 from 7.7.18 onward, VCL-1 from 7.7.37 onward, and VCL-2 starting with 7.7.41). The current license is Vaadin Commercial License, version 2.

Extended Maintenance versions of Vaadin Framework are being made available through Maven Central.

In order to get access to extended maintenance Framework source code, contact sales.

Changelog

For a changelog of Vaadin 8 starting with 8.15.0, see the Vaadin 8 Changelog.

For a changelog of Vaadin 7 starting with 7.7.30, see the Vaadin 7 Changelog.

Using Vaadin 8 to develop applications

Please refer to Vaadin tutorial and other documentation.

For known issues within Vaadin framework, see Issue Tracker. Comment or react to an existing issue to mark your interest in resolving it. If you don't find an existing report of an issue you are experiencing, submit a new issue.

Developing Vaadin Framework

For instructions on how to set up a working environment for developing the Vaadin framework, please visit Development Instructions. Pay special attention to workspace preferences.

Contributing

As of February 2022, this repository is used for issue tracking. Since we are no longer building releases from this repository, we are no longer accepting pull requests. You may file bug reports here against extended maintenance releases.

framework's People

Contributors

ahie avatar ansku avatar artur- avatar asashour avatar caalador avatar codingfabian avatar emarc avatar hesara avatar jdahlstrom avatar johndevs avatar jojule avatar jouni avatar juusovalli avatar legioth avatar magi42 avatar makoivis avatar mhosio avatar minborg avatar mstahv avatar ollitietavainenvaadin avatar pleku avatar saulis avatar tatulund avatar tehapo avatar tepi avatar thevaadinman avatar tsuoanttila avatar wbadam avatar zch avatar zhesun88 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

framework's Issues

Frameset refresh broken in safari (xslt-mode) ?

Originally by @jojule


This might not be true anymore. Confirm.

http://bugzilla.millstone.org/show_bug.cgi?id=692

Description: Opened: 2005-05-21 06:55
When multiple windows are being refreshed in a frameset on Safari browser the
refreshed windows are oppened as new windows rather then being refreshed in the
frameset

Reproduce:
Framset Window
-WindowA
-WindowB

User clicks on Window A which cuases it to be reloaded. The action causes the
WindowB to be updated. However, WindowB instead of getting refreshed gets poped
out to a new window.

This issue only happens on Mac OS X Safari Browser. FireFox works fine...

-- Misko


Imported from https://dev.vaadin.com/ issue #160

Form setVisibleItemProperties() doesn't work

Originally by @jojule


If you try to set any visible item property to Form component the result is a
blank form without any visible field:

public void init() {
Window mainWindow = new Window("Form Window");
setMainWindow(mainWindow);
DataObject msd = new DataObject();
msd.setUserName("ikkieh");
BeanItem bim = new BeanItem(msd);
mainWindow.addComponent(form);
form.setItemDataSource(bim);
form.setVisibleItemProperties(Arrays.asList(new String[]{"userName"}));
}

For more info, see http://bugzilla.millstone.org/show_bug.cgi?id=679


Imported from https://dev.vaadin.com/ issue #139

Client-side tracking and playback of user input events

Originally by @samie


For usability point of view a set of components that allow tracking of user inputs and replaying them later. This enables usability experts to perform studies and better understand the user interaction within web applications.

Essential features:

  • Server-side API for tracking mouse, keyboard, etc. events
  • Component that record/replays user interaction

Imported from https://dev.vaadin.com/ issue #121

StringLengthValidator bugs

Originally by @jojule


Confirm

http://bugzilla.millstone.org/show_bug.cgi?id=648

Description: Opened: 2003-07-15 21:04
This is from version 3.0.3
If you try to validate a value with StringLengthValidator, and this value
allows null, the validation fails with NullPointerException.
This is because "null allowed" is not handled. I did the correction from
this...

public void validate(Object value) throws Validator.InvalidValueException {
if (value == null && !allowNull)
throw new Validator.InvalidValueException(errorMessage);
// the line below is where the error occurs, because value is null
String s = value.toString();
if (s == null && !allowNull)
throw new Validator.InvalidValueException(errorMessage);
// the line below would cause the same error
int len = s.length();
if ((minLength >= 0 && len < minLength)
|| (maxLength >= 0 && len > maxLength))
throw new Validator.InvalidValueException(errorMessage);
}

to this...

public void validate(Object value) throws Validator.InvalidValueException {
if (value == null && !allowNull)
throw new Validator.InvalidValueException(errorMessage);
String s # (value= null ? null : value.toString());
if (s == null && !allowNull)
throw new Validator.InvalidValueException(errorMessage);
int len # (s= null ? 0 : s.length());
if ((minLength >= 0 && len < minLength)
|| (maxLength >= 0 && len > maxLength))
throw new Validator.InvalidValueException(errorMessage);
}

The same will happen to the isValid() method, as it has the same code.

Hope it helps.


Imported from https://dev.vaadin.com/ issue #151

adding a directory theme is interpreted as a jar theme under Linux

Originally by @jojule


Confirm this

Is it a duplicate of #140 ?

http://bugzilla.millstone.org/show_bug.cgi?id=656

Trying to add a new theme, I added under my application a directory:

WEB-INF/lib/themes/xul/

In my application I have these lines:

	mainWindow.setTerminal(new WebBrowser());
	mainWindow.setTheme("xul");

I get this exception:

javax.servlet.ServletException: Invalid theme source: /WEB-INF/lib/themes/xul
at org.millstone.webadapter.WebAdapterServlet.getThemeSources(Unknown Source)
at org.millstone.webadapter.WebAdapterServlet.init(Unknown Source)

My guess is that in WebAdapterServlet, the line 414 does not work as expected
under Linux (as /WEB-INF/lib/themes/xul looks indeed like an absolute filename).

Thanks!

------- Additional Comment #1 From Adrian Petru Dimulescu 2003-11-27 01:40 -------
Perhaps I haven't been very explicit on this one ?


Imported from https://dev.vaadin.com/ issue #155

Datasource resize might throw ArrayOutOfBundes or NegativeArraySize exceptions from the table

Originally by @jojule


confirm

http://bugzilla.millstone.org/show_bug.cgi?id=693

Description: Opened: 2005-06-04 22:31
Table can causes ArrayOutOfBundes or NegativeArraySize exceptions if:

  1. Create a table which has multiple pages
  2. flip to page 2 or higer
  3. resize the DataSource to size of a single page

(One would expect the table to automatically flip to valid page)

Method which fail with exceptions or fail silently and later fail at repaint...
setCurrentPageItemID (If passed first itemID the logic never increments index and thus
currentPageIndex is never update)
setCurrentPageIndex (exception thrown)
paintContent (exception thrown)


Imported from https://dev.vaadin.com/ issue #161

Insert & remove row for GridLayout

Originally by @Artur-


Makes it possible to dynamically insert/delete a row in the middle of an existing GridLayout. Row to delete must be empty. Stretches/shrinks multicell components that overlap the selected row.

public void removeEmptyRow(int y) {
	if (y >= height) {
		throw new IllegalArgumentException("Out of bounds");
	}

	for (Iterator i = areas.iterator(); i.hasNext();) {
		Area existingArea = (Area) i.next();
		if (existingArea.y1 ## y || existingArea.y2 y) {
			throw new IllegalArgumentException("Row " + y
					+ " contains component at (" + existingArea.x1 + ","
					+ existingArea.y1 + ")");
			}
			
		if (existingArea.y2 > y) {
			if (existingArea.y1 < y) {
				existingArea.y2--;
			} else {
				existingArea.y1--;
				existingArea.y2--;
			}
		}
	}

	setHeight(height - 1);
	if (this.cursorY > y)
		this.cursorY--;
		
	requestRepaint();

}

public void insertRow(int y) {
	if (y >= height) {
		throw new IllegalArgumentException("Out of bounds");
	}

	for (Iterator i = areas.iterator(); i.hasNext();) {
		Area existingArea = (Area) i.next();
		if (existingArea.y2 >= y) {
			// Stretch areas that span over the selected y
			if (existingArea.y1 < y) {
				existingArea.y2++;
			} else {
				existingArea.y1++;
				existingArea.y2++;
			}
		}
	}

	if (this.cursorY >= y)
		this.cursorY++;
		
	setHeight(height + 1);
	requestRepaint();
}


Imported from https://dev.vaadin.com/ issue #124

Test that demos look decent and work

Originally by Jani Laakso


Evaluate that first feeling from demos is that they work well. Include the following browsers:

  • Windows XP IE 6, 7
  • Windows XP FF 2 (latest)
  • Linux FF 2 (latest)
  • Mac FF 2 (latest)
  • Mac Safari (latest)

Firefox enforces auto-update, for first release we focus on latest FF version.

icon doesn't appear in pop-up actions

Originally by @jojule


Please confirm

http://bugzilla.millstone.org/show_bug.cgi?id=642

Description: Opened: 2003-04-03 14:00
I defined an Action to a field and I defined an icon to the action, but the
icon didn't appear. There was not defined an "icon handler" in the
action.xsl - ...themes.../default/xsl/container/action.xsl.

I wrote this

<xsl:if test="@ICON">

</xsl:if>
<xsl:value-of select="@caption" />

instead of this

<xsl:value-of select="@caption" />


Imported from https://dev.vaadin.com/ issue #148

TimeField type for DateField component

Originally by @jojule


http://bugzilla.millstone.org/show_bug.cgi?id=651

Description: Opened: 2003-09-15 14:32
We have now DateField component but what about TimeField.
Would be nice to have only TimeField like DateField component!

Or You can make one style change to enable only see a Time part of
date. You have now only precision in which I don't know how can do it to
see only time part without date.

Thank's


Imported from https://dev.vaadin.com/ issue #153

SOA compatible UI architecture

Originally by @samie


As mentioned in several sources:

  • "Service oriented architecture (SOA) is gaining momentum as an approach to organizing and building enterprise IT infrastructures, and rightly so."
  • "SOA markets at $450 million in 2005 are expected to reach $18.4 billion by 2012."

One suggested solution in UI layer integration is mentioned at http://www.looselycoupled.com/opinion/2006/davies-ui-dev0424.html

The core idea here is to introduce the "loose coupling" and "BPEL-style orchestration" into UI layer.

Again, this is something that can be achieved in several different ways and more research on market is needed.


Imported from https://dev.vaadin.com/ issue #115

Chat demo is buggy

Originally by @jojule


Chat example should be either corrected or removed. Now xslt-mode uses a comet-like implementation and uidl-mode does not work. This is very confusing as toolkit should abstract the differences. Maybe it would be easier to drop this example alltogether?

Here are few issues from bugzilla

http://bugzilla.millstone.org/show_bug.cgi?id=658

Potentially two defects...

1 Mac OS X Safari 1.1 (Panther)
Conversation frame rarely loads. After introducting myself, I hit the "List Chatters"
button to see if I show up. Even when the page completes loading, I don't see
myself (or anyone else). Not even in the source so it's not a rendering bug (but still
could be browser related).

2 Windows Mozilla 1.5
Renders more often than not but I still can't get features to work (same problem as
above).

Can't tell if this is a server load issue (seems sluggish) or if these defects only
happen on the two browsers I use.


Imported from https://dev.vaadin.com/ issue #156

Table.getCurrentPageFirstItemId() does not work correctly

Originally by @jojule


Please confirm

http://bugzilla.millstone.org/show_bug.cgi?id=639

Description: Opened: 2003-03-19 11:37
The method doesn't use the id variable: it declares it, but doesn't assign any
value (except null).
In certain cases (e.g. when someone direcly manipulates the datasource of the
table) it causes the first (or more) elements to not appear when the table is
rendered.

Original code:
public Object getCurrentPageFirstItemId() {

	// Priorise index over id if indexes are supported
	if (Container.Indexed.class.isAssignableFrom(items.getClass())) {
		int index = getCurrentPageFirstItemIndex();
		Object id = null;
		if (index >= 0 && index < size())
			 ((Container.Indexed) items).getIdByIndex(index);
		if (id != null && !id.equals(currentPageFirstItemId))
			currentPageFirstItemId = id;
	}

	// If there is no item id at all, use the first one
	if (currentPageFirstItemId == null)
		currentPageFirstItemId = ((Container.Ordered) items).firstItemId();

	return currentPageFirstItemId;
}

recommended fix:
public Object getCurrentPageFirstItemId() {

	// Priorise index over id if indexes are supported
	if (Container.Indexed.class.isAssignableFrom(items.getClass())) {
		int index = getCurrentPageFirstItemIndex();
		Object id = null;
		if (index >= 0 && index < size())
			 id = ((Container.Indexed) items).getIdByIndex(index);
		if (id != null && !id.equals(currentPageFirstItemId))
			currentPageFirstItemId = id;
	}

	// If there is no item id at all, use the first one
	if (currentPageFirstItemId == null)
		currentPageFirstItemId = ((Container.Ordered) items).firstItemId();

	return currentPageFirstItemId;
}

BR,
don


Imported from https://dev.vaadin.com/ issue #147

TexfField Maxlenght

Originally by @jojule


See implementation example: http://bugzilla.millstone.org/show_bug.cgi?id=698

Description: Opened: 2006-01-16 15:45
there is a property "maxlength" in file textfield.xsl but not in TextField.java
so it's not possible to add this property in the html result file :

the solution, in the TextField.java file :

add a property :

private int maxlength = 0;

and add in the method "paintContent" :

if (maxlength != 0) {
target.addAttribute("maxlength", String.valueOf(maxlength));
}


Imported from https://dev.vaadin.com/ issue #165

Small bug in empty pageable table ....

Originally by @jojule


Confirm

http://bugzilla.millstone.org/show_bug.cgi?id=643

Description: Opened: 2003-05-05 20:27
If table.size()==0 and setCurrentPageFirstItemIndex() called with 0 argument,
then because of an improper order of boundary checking become
currentPageFirstItemIndex ==-1.

The resolution is to change code to:

public void setCurrentPageFirstItemIndex(int currentPageFirstItemIndex) {
// Ensure that the new value is valid
if (currentPageFirstItemIndex >= size())
currentPageFirstItemIndex = size() - 1;
if (currentPageFirstItemIndex < 0)
currentPageFirstItemIndex = 0;
....


Imported from https://dev.vaadin.com/ issue #149

Tomcat throws an exception after reloadings

Originally by @jojule


Please confirm

http://bugzilla.millstone.org/show_bug.cgi?id=699

Description: Opened: 2006-02-16 21:10
When playing with millstone3.1.0, I build a demo web app and constantly redeploy
to Tomcat 5.5.9 by copying some files to the webapps directory. After some
reloadings, Tomcat throw the following exception though everything is still
working. If I change my Application class to implement java.io.Serializable, I
did not get this exception any more, but, I get a NullPointerException and the
web app won't start any more. I googled net and found NetBeans IDE used to have
similar bug in their IDEJspServlet and they fixed it. That is why I believe it
is the servlet that caused the problem.

Feb 16, 2006 8:47:10 AM org.apache.catalina.startup.HostConfig checkResources
INFO: Reloading context [/millstone]
Feb 16, 2006 8:47:10 AM org.apache.catalina.session.StandardManager doLoad
SEVERE: IOException while loading persisted sessions:
java.io.WriteAbortedException: writing aborted; java.io.NotSeriali
zableException: demo.Demo2
java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException: demo.Demo2
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1303)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at java.util.LinkedList.readObject(LinkedList.java:776)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1813)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1371)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:903)
at
org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:393)
at
org.apache.catalina.session.StandardManager$PrivilegedDoLoad.run(StandardManager.java:76)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.session.StandardManager.load(StandardManager.java:307)
at
org.apache.catalina.session.StandardManager.start(StandardManager.java:634)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4057)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1069)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1162)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1304)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1568)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1577)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1557)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.NotSerializableException: demo.Demo2
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
at java.util.LinkedList.writeObject(LinkedList.java:755)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:890)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1333)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
at
org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1445)
at
org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:920)
at
org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:516)
at
org.apache.catalina.session.StandardManager$PrivilegedDoUnload.run(StandardManager.java:88)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.session.StandardManager.unload(StandardManager.java:451)
at
org.apache.catalina.session.StandardManager.stop(StandardManager.java:664)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4255)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1061)
... 8 more
Feb 16, 2006 8:47:10 AM org.apache.catalina.session.StandardManager start
SEVERE: Exception loading sessions from persistent storage
java.io.WriteAbortedException: writing aborted;
java.io.NotSerializableException: demo.Demo2
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1303)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at java.util.LinkedList.readObject(LinkedList.java:776)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:919)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1813)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1713)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
at
org.apache.catalina.session.StandardSession.readObject(StandardSession.java:1371)
at
org.apache.catalina.session.StandardSession.readObjectData(StandardSession.java:903)
at
org.apache.catalina.session.StandardManager.doLoad(StandardManager.java:393)
at
org.apache.catalina.session.StandardManager$PrivilegedDoLoad.run(StandardManager.java:76)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.session.StandardManager.load(StandardManager.java:307)
at
org.apache.catalina.session.StandardManager.start(StandardManager.java:634)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4057)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1069)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1162)
at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:293)
at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at
org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1304)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1568)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1577)
at
org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1557)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.NotSerializableException: demo.Demo2
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
at java.util.LinkedList.writeObject(LinkedList.java:755)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:890)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1333)
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
at
org.apache.catalina.session.StandardSession.writeObject(StandardSession.java:1445)
at
org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:920)
at
org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:516)
at
org.apache.catalina.session.StandardManager$PrivilegedDoUnload.run(StandardManager.java:88)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.session.StandardManager.unload(StandardManager.java:451)
at
org.apache.catalina.session.StandardManager.stop(StandardManager.java:664)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:4255)
at
org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1061)
... 8 more
Demo2.buttonClick

------- Additional Comment #1 From Sami Ekblad 2006-02-17 12:12 -------
There has been problems loading the serialized sessions before, but no earlier
reports about application not starting has been made before this.


Imported from https://dev.vaadin.com/ issue #166

Implement Sizeable for table component and better support for ajax implementation

Originally by @mstahv


Subtasks:

  • implement Sizeable
  • add optional variables (as per meeting on fri 26.1.)
  • firstrow (first row from which client wants new uidl, not necessary firstvisible, but defaults to this)
  • rowsPerRequest (amount of rows client wants to read, defaults to pagelength)

This way client gets by default same data as previously, but can:

  • get cache rows as it wants (hinted by sizeable values)
  • and update values (firstvisible, selected etc) without receiving pagelength of already rendered rows from server

Batch process/task support or component

Originally by @samie


In enterprise applications there is need for batch processes that are run in server. Mostly this means simple tasks that can be run in separate thread. During processing user feedback is needed and and the user should have posssibility continue working with other tasks.

Suggest that simple framework for easily starting and monitoring of separate tasks (threads) is created. Following features seem important:

  • Starting separate processing thread in single button click
  • Returning the control immediately to user
  • Provide the user with feedback about how the processing is going on (see also #111)
  • A way to cancel the process and returning the control back to user.

For example Eclipse has generic "task support" that has most of the required features.


Imported from https://dev.vaadin.com/ issue #114

Table Components does not forget Selection on new data assign

Originally by @jojule


Please confirm (i somehow remember that this should be fixed)

http://bugzilla.millstone.org/show_bug.cgi?id=690

The Table Component does not forget it's selection when a new Container
Datasource is assigned.

Abstract Code:

Container c = ...
myTable.setContainerDataSource(c);

  • now the user selects some of the rows

Container c2 = ...
myTable.setContainerDataSource(c2)

Collection selection = (Collection)myTable.getValue();

  • now selection also contains IDs of c! It should only contain IDs of c2!

Imported from https://dev.vaadin.com/ issue #159

Design drag and drop support API

Originally by @Artur-


Generic drag and drop features should be implemented. In certain business applications dnd seems to overperform all other UI methods (for example in design, grouping and organizing tasks).

It should be possible to:

  • Drag and drop between components
  • Drag and drop within components (e.g. an item in a Tree)

Considerations:

  • User can specify a payload for the operation
  • Drop target can refuse or accept all payloads or only a specific type of payload
  • A drag operation can be move, copy, link, other(?). The interface should visually describe what operation is being performed (cursor).
  • Polling of server-side to find out if the current position is a valid target should not be necessary while doing basic dragging operations
    • Advanced drag operations could poll server-side to see if the current target accepts the operation

Millstone backward compatibility

Originally by @samie


Toolkit claims to be "backward compatible" with old Millstone 3.1. However, currently update requires code modifications and recompilation of the application. Also the custom themes do not work.

Suggestion was that package called "millstone-compatibility.jar" is created. This eliminates the recompilation needs in most cases. Also at least a small addition in theme Java callback mechanism is required.


Imported from https://dev.vaadin.com/ issue #205

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.