Wednesday, March 2, 2011

Why Make Default Version in Google App Engine may fail!

I had deployed my http://10.APP.appspot.com/ and tested - all was fine, so I clicked on the "Make Default" button and got this error:

Why?
From version 9 to version 10 I had updated my GUI library: (http://www.zkoss.org/download/) changing from ZK 5.0.4 to ZK 5.0.6 giving me this error in the Logs:


javax.servlet.ServletException: java.lang.RuntimeException: java.io.InvalidClassException: org.zkoss.zk.ui.impl.DesktopImpl; local class incompatible: stream classdesc serialVersionUID = 20100623, local class serialVersionUID = 20101123


If I understand this correct ZKoss DID change the serialVersionUID as they SHOULD do, but when the application starts up it loads data from the session - and this is OLD classes with another serialVersionUID.

So what can I do?
- wait until there are NO active sessions on the server?
- delete sessions manually in the Datastore Viewer?
- make an admin-servlet that does this?

Wednesday, December 8, 2010

Updating my apps database schema in the App Engine's datastore

I had read this article by Mark Ivey:
http://code.google.com/appengine/articles/update_schema.html

So I thought I was ready for this ... but!!

I had added a new field like this:
@Persistent
private int sortorder;

And got this error whatever I did:
This property is mapped to FIELD, which cannot accept null values.

So I changed my field definition to:

@Persistent
private Integer sortorder;

Now I could loop the records in my table and assign default values, because now null is accepted!

Puh ...

Monday, June 7, 2010

To make my blogger page look like a normal web page ...

To remove the navbar I added:

/* next line removed the navbar */
#navbar-iframe { display: none !important; }

Just above the variable definition in the template HTML code.

I found this documentet here:
http://todaytutorials.wordpress.com/2009/10/23/remove-blogger-navbar/




Works for me ;-)
now I have to go to blogger.com to login and edit my pages ...

Thursday, May 20, 2010

Installing Ubuntu Netbook from a USB

I found lots of instructions on how to do it from a Windows PC, but I have already started to use the Ubuntu Desktop version 10.
I found detailed descriptions and lots of command lines in the Ubuntu documentation - and got the feeling this could take some time.

Then I saw the "Startup Disk Creator" under System > Administration and that was it! I had already downloaded the disk-image. I had my USB ready. I clicked on "Erase Disk", then on the "Make Startup Disk", and waited ...



Once the USB was ready - all I had to do was to get the BIOS screen up when starting my dead little notebook. (Had to google this: F2 and Esc on my Eee PC). Made sure it would boot from the USB - and it did!

The installation of Ubuntu is so easy! And my Eee PC is working again ;-)

Thursday, May 6, 2010

Wednesday, May 5, 2010

Strong Setup

Strong Setup

We are very happy to have been approved as a Google Apps Authorized Reseller.


So do contact us to get help to set up your google apps account :-)


The following are some notes that may be useful after you have your email on mail.yourdomain.com but may also want it on Outlook and iPhone.


How you get started with
Google Apps Sync for Microsoft Outlook

depends on how you plan to use it.

http://mail.google.com/support/bin/answer.py?hl=en&answer=171710
I want to install Google Apps Sync and keep using Outlook ...

Note from these pages:
After installing Google Apps Sync for Microsoft Outlook, you can use Outlook to access either your Google Apps account, or the previous account you're switching from. (The data in each account is kept totally separate.)

Each time you start Outlook, you're prompted to choose the profile for whichever account you want to open.
When you no longer need access to your previous account, however, you can have Outlook open your Google Apps profile automatically, without prompting you to select it from a dialog:

Go to your Windows Control Panel > Mail settings, and click Show Profiles.
In the dialog that opens, select Always use this profile, specifying your Google Apps profile.


My experience:

1) Installing Google Apps Sync did not work as I expected on some PC's because I could not download! The button was disabled for some reason. So I copied the setup-program from my computer to the new computer and started it. On another computer the message was that I did not have admin access so I was not allowed to install anything, and I had to assign these rights first.

2) When the Google Apps Sync starts it will ask you to create a profile, this is for email you use. Then it will start Outlook and you have to choose a profile. The new one with your email is selected. Just "OK" this (do not create a new profile!). After this the sync process starts - however: not all is imported even if the process indicator tell you it is 100% done. So you may have to close Outlook - open it again - to choose the old profile and find your old emails.

3) Another program complained after the Google Apps Sync was installed, because this was connected to the Outlook account.


Gmail vs. Outlook

http://mail.google.com/support/bin/answer.py?answer=153966
Note: Gmail does not support rich text formatting, graphics, or HTML in your signature

Outlook setup after importing

http://mail.google.com/support/bin/answer.py?hl=en&answer=160313
Note: here are a few things you might want to set up in your new Google Apps profile that don't get imported, to make your Outlook environment best match what you had before...

Typical problem:

"When I delete a message in the Outlook inbox for Gmail, it comes right back in the next time Outlook does a Send/Receive."
"I should add that I have the same problem when moving messages from my Outlook Gmail inbox to Outlook folders: The message comes right back into the Outlook Gmail inbox at the next Send/Receive."

>> Read the answer in the help forum ...


iPhone

Follow the instructions below to set up POP access on the iPhone.
http://mail.google.com/support/bin/answer.py?answer=72454

My contact info:
Fred Pallesen



email: fred@strong.no


Friday, April 9, 2010

Testing ZUL on GAE

I have ZK Studio installed on a virtual machine running Ubuntu and I have installed the Google Plugin for Eclipse.

I have created a New Web Application Project and integrated ZK with the Google App Engine.

My first guestbook example from the GAE introduction was replace with a new test environment at this URL:

http://guest-of-fredpallesen.appspot.com/

If I go to /test on my localhost - I get to /test/index.html - but out in the real-world I have to give the absolute URL.

http://guest-of-fredpallesen.appspot.com/test - fails
http://guest-of-fredpallesen.appspot.com/test/index.html - works
http://guest-of-fredpallesen.appspot.com/test/zul - fails
http://guest-of-fredpallesen.appspot.com/test/zul/index.zul - works
http://guest-of-fredpallesen.appspot.com/dinitrol - works

Running the project locally all links works fine.

Stating the server at localhost:8888 I get some warnings:

WARNING: Component captcha ignored.
Reason:  java.awt.Font is a restricted class. 


WARNING: Component jasperreport ignored. 
Reason: unable to load org.zkoss.zkex.zul.Jasperreport due to java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource

Running the system I get another warning:

WARNING: Failed to configure fileupload.

Not that I use any of this so I may find out how to remove the jar's.

Next task: to test the datanucleus.appengine.datastore ;-)

Friday, September 18, 2009

Content-Disposition

Today I found that:

Content-Disposition: attachment;filename=document.pdf
can NOT be changed to
Content-Disposition: inline;filename=document.pdf

It MUST be
Content-Disposition: inline
without the filename - if you want it to work in IE.

Got the idea after reading:
http://indiwiz.com/2009/03/11/forcing-http-download/

Reading a bit more in http://www.ietf.org/rfc/rfc2183.txt
I found my dynamic download to work nice when these headers where set:

Content-Type:
Content-Disposition:

Thursday, September 3, 2009

zktodo2 failed - but fixed again

I've installed NetBeans 6.7.1 on Ubuntu running on my Sun VirtualBox. Preferred to do so in stead of messing up my own computer ...

Got subversion and maven2 installed by using some magical
sudo apt-get commands ;-)

Got the zktodo2 installed by running mvn co (checkout).

Got the a nice dependency graph to display - WOW!!
http://mediacast.sun.com/users/ken_g/media/maven-dependecies-screencast/
fixed an error and got the project to build.

But the deployment failed with an error telling me that the
element type "listener" must match "(listener-class)"
Found the reason here:
http://www.coderanch.com/t/82686/Tomcat/listener-listener-class

So I changed the head of my web.xml from:
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app>

to:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

and it worked!

Now I can go home and tell my wife tonight - and I am sure she'll fall asleep at once ;-)

P.S.
So I took an exported appliance home - and imported my new environment into the VirtualBox on my laptop. And it did not work!
Could not create the entity manager! Clean and build - then run. Nope - still problems! I had to undeploy the context, then redeploy - to make it work.

Wednesday, September 2, 2009

svn - remain in conflict

A folder was marked as in conflict ... don't know why!
I had to go to dos prompt and finally found that

> svn info

told me about a conflict properties file ... so I deleted this!
Then I could commit again ;-)