Wednesday, 27 January 2010
Xpages bug: File download control in error
In an application we build, there was the need for a file upload and file download control.
Uploading works fine and the files are displayed in the file download control as you can see in the screenshot.
And in the Notes client the uploaded files are nicely displayed as attachments.
But when attempting to open the files through the file download control, the browser displays an error 500: "HTTP Server command not handled exception" and the server console displays the errors displayed below this article (1).
And the standard 8.5 discussion database produces the same error.
We did find a workaround (far from ideal and the admins nightmare), which is to place the database in the servers data root directory.
Through the PMR response by IBM, I found this was already blogged by Mark Hughes in april 2009.
The issue is solved in 8.5.1 but that doesnot help us as we will not upgrade (for several reasons) to 8.5.1 for a while yet.
I do not understand why it was picked up at the time to be solved in the future 8.5.1 and not fixed in the live release 8.5.
Software versions:
- DDE 8.5.1 on Windows XP Pro
- Domino server 8.5 FP1 on Windows 2003 server
(1) Domino server log errors:
HTTP JVM: SEVERE: CLFAD####E: Exception thrown
HTTP JVM: SEVERE: CLFAD####E: Exception occurred servicing request for: /development/uitzendkrachten.nsf/xsp/.ibmmodres/domino/OpenAttachment/Uitzendkrachten.nsf/849E2F5A666919A1C12576B600487E9A/Body/program1.JPG - HTTP Code: 500
HTTP Web Server: Command Not Handled Exception [/development/uitzendkrachten.nsf/xsp/.ibmmodres/domino/OpenAttachment/Uitzendkrachten.nsf/849E2F5A666919A1C12576B600487E9A/Body/program1.JPG]
Monday, 25 January 2010
Disappointed by the lack of official webcast of Lotusphere 2010 OGS
As I was not able to attend this years Lotusphere, I am relying on IBM to post a webcast of the Lotusphere 2010 - Opening General Session to hear about all the great stuff.
Obviously I was relying a bit on IBM's previous LS habits to post this webcast during Lotusphere itself. Or at least that is how it was in my mind.
Does anyone have an idea when or -if- it will be made available for us poor souls who where not able to attend?
Of course there has been a great coverage on the many blogs around the world already and even the live-blogging was great, but still it does not beat watching the real thing (even it is not live but a webcast).
Obviously I was relying a bit on IBM's previous LS habits to post this webcast during Lotusphere itself. Or at least that is how it was in my mind.
Does anyone have an idea when or -if- it will be made available for us poor souls who where not able to attend?
Of course there has been a great coverage on the many blogs around the world already and even the live-blogging was great, but still it does not beat watching the real thing (even it is not live but a webcast).
Thursday, 12 November 2009
NotesStream to the test
At the NL LUG 2009 Martin Scheafer improvised during his shortened session Domino Globetrotting/Dev talk. Due to customer regulations he could not show all he had planned to show.
And so he did a couple of side steps into @function and lotusscript coding. NotesStream was mentioned as a performance booster when building (long) strings e.g. in webagents when building return data for a webservice. During execution of demo code the difference between concatening a string using[string = string + extrastring] and the same code but now using NotesStream to build the return string, concatenating was a factor 4 to 5 slower than NotesStream.
I immediately saw an opportunity to improve the performance of the several agents we have running every day to transport product and other data from Notes to our Websphere Commerce servers via xml files. Some of them deliver a xml file of over 100mb.
So I put it to the test running 4 agents delivering the same result and each of them differing slightly in how the data is written.
The output build has the following structure per record:
<persoon>
<voornaam>Jan</voornaam>
<achternaam>Jansen</achternaam>
<woonplaats>Scherpenzeel</woonplaats>
<persoon>
The results in performance are listed below:
And as Martin mentioned in his session, NotesStream is certainly helpful in webagents that build return xml's on request.
And so he did a couple of side steps into @function and lotusscript coding. NotesStream was mentioned as a performance booster when building (long) strings e.g. in webagents when building return data for a webservice. During execution of demo code the difference between concatening a string using
I immediately saw an opportunity to improve the performance of the several agents we have running every day to transport product and other data from Notes to our Websphere Commerce servers via xml files. Some of them deliver a xml file of over 100mb.
So I put it to the test running 4 agents delivering the same result and each of them differing slightly in how the data is written.
- agent builds string (concatenate) to 65000+ bytes and than writes to file.
- agent builds string (concatenate) per record and writes to file per record.
- agent write to file directly, line by line.
- agent writes to file line by line using NotesStream.
The output build has the following structure per record:
<persoon>
<voornaam>Jan</voornaam>
<achternaam>Jansen</achternaam>
<woonplaats>Scherpenzeel</woonplaats>
<persoon>
The results in performance are listed below:
- Concatenated string test (concat string to 65000+ bytes before write).
[Elapsed time: 296 seconds] [processed 123838 records] - Concatenated string test (concat/write per record).
[Elapsed time: 163 seconds] [processed 123838 records] - Direct print to file test.
[Elapsed time: 169 seconds] [processed 123838 records] - NotesStream string test.
[Elapsed time: 170 seconds] [processed 123838 records]
And as Martin mentioned in his session, NotesStream is certainly helpful in webagents that build return xml's on request.
Monday, 2 November 2009
NLLUG conference will see next edition in 2010
Last thursday and friday I spent my time at the Amsterdam RAI for the NLLUG conference. The first multiday conference in the history of the SNUG (Dutch Lotus software user group).
Over 300 visitors, 25 business partners, 37 speakers and 39 sessions in 3 parallel tracks (and on friday even a fourth track) have made it a succesfull conference.
As always the sessions were of great quality, enabling everyone to go away with new knowledge and ideas.
I loved Rob Novak's session in which he presented SNAPPS' MyDomino application whilst the audience was enjoying a beer, great format!! And awesome application!!
Ok it was Heineken, but you cannot blame him for that ;-), next time LaTrappe Blond Rob ?.
To continue the success, the dates for the NLLUG 2010 have already been set to the 17th/18th of june. So, mark these dates in your calendar.
During the NLLUG, 25 IBM Lotus business partners (together with IBM) have launched the "Lotus loves people" initiative to give the Lotus brand more attention (advertising ?) in the Dutch market.
SNUG team (Marnix Kemme & others), thank you very much for your hard work in putting together this great event.
Over 300 visitors, 25 business partners, 37 speakers and 39 sessions in 3 parallel tracks (and on friday even a fourth track) have made it a succesfull conference.
As always the sessions were of great quality, enabling everyone to go away with new knowledge and ideas.
I loved Rob Novak's session in which he presented SNAPPS' MyDomino application whilst the audience was enjoying a beer, great format!! And awesome application!!
Ok it was Heineken, but you cannot blame him for that ;-), next time LaTrappe Blond Rob ?.
To continue the success, the dates for the NLLUG 2010 have already been set to the 17th/18th of june. So, mark these dates in your calendar.
During the NLLUG, 25 IBM Lotus business partners (together with IBM) have launched the "Lotus loves people" initiative to give the Lotus brand more attention (advertising ?) in the Dutch market.
SNUG team (Marnix Kemme & others), thank you very much for your hard work in putting together this great event.
Wednesday, 14 October 2009
ND 8.5.1. install - third time right
After experiencing the slow 8.5. DDE I wanted to upgrade to DDE 8.5.1. (and the client of course) asap after the official release.
And yes, as you can guess for the title of this post I ran into some trouble. The first time I installed 8.5.1., as I was used to from the past, over the 8.5 installation.
After the install finished I enthousiastically double clicked the Client icon, but to my suprise after the 8.5 splash image disappeared nothing seemed to happen for a while. Until well after 10 minutes, the client window appeared. I eagerly clicked on to the DDE, but no results.
Found on Planet Lotus some hints to first uninstalling the old client before installing the new one. Did that, but still no fast opening client. In fact still over 10 minutes before the client opened and no results on the DDE.
As a last resort, I removed the installed 8.5.1. clients again, did a cleanup of the registry, rebooted the pc and reinstalled again.
After successfull install, rebooted the pc (better safe than sorry) and clicked the client icon again.
And again *sigh* it took over 10 minutes before the client loaded. This time though I had the fortune to be away from my desk to fetch the collegues some coffee.
And when I came back to my pc, a dialog was hovering over the 8.5.1. client with a message: "Client Setup completed, click ok to restart". This dialog probably also displayed on the previous 2 attempts, but was probably hidden behind active windows.
Now the client opens just fine, as does the 8.5.1 DDE. And lightning fast compared to the 8.5 version.
So beware if the client opens slowly the first time after the install and wait for that dialog setup complete message.
From the comments on various blogs, it appear I ma no alone in my experience and IBM should at least hint to a slow first startup on the install screens/instructions to avoid this confusion.
Good luck with your installs.
And yes, as you can guess for the title of this post I ran into some trouble. The first time I installed 8.5.1., as I was used to from the past, over the 8.5 installation.
After the install finished I enthousiastically double clicked the Client icon, but to my suprise after the 8.5 splash image disappeared nothing seemed to happen for a while. Until well after 10 minutes, the client window appeared. I eagerly clicked on to the DDE, but no results.
Found on Planet Lotus some hints to first uninstalling the old client before installing the new one. Did that, but still no fast opening client. In fact still over 10 minutes before the client opened and no results on the DDE.
As a last resort, I removed the installed 8.5.1. clients again, did a cleanup of the registry, rebooted the pc and reinstalled again.
After successfull install, rebooted the pc (better safe than sorry) and clicked the client icon again.
And again *sigh* it took over 10 minutes before the client loaded. This time though I had the fortune to be away from my desk to fetch the collegues some coffee.
And when I came back to my pc, a dialog was hovering over the 8.5.1. client with a message: "Client Setup completed, click ok to restart". This dialog probably also displayed on the previous 2 attempts, but was probably hidden behind active windows.
Now the client opens just fine, as does the 8.5.1 DDE. And lightning fast compared to the 8.5 version.
So beware if the client opens slowly the first time after the install and wait for that dialog setup complete message.
From the comments on various blogs, it appear I ma no alone in my experience and IBM should at least hint to a slow first startup on the install screens/instructions to avoid this confusion.
Good luck with your installs.
Monday, 28 September 2009
NL LUG 09 29-30 october in Amsterdam
The registration for the NL LUG 09 on 29/30 october in Amsterdam is going fast.
The agenda is set and it has a pick for everyone in almost every timeslot and as always it has some difficult choices to make on which sessions to go to.
Interesting are some of the subjects in the "alternative" track which even has a session by Microsoft !!
The location is now also set, the RAI congress centre, which is a good choice as it very accesible by public transport and by car.
The SNUG (Dutch IBM/Lotus User Group) have succeeded in creating a packed and interesting agenda, getting a good venue and sponsors.
More information can be found on the NL-LUG 2009 website: http://www.lug2009.nl.
See you there.
The agenda is set and it has a pick for everyone in almost every timeslot and as always it has some difficult choices to make on which sessions to go to.
Interesting are some of the subjects in the "alternative" track which even has a session by Microsoft !!
The location is now also set, the RAI congress centre, which is a good choice as it very accesible by public transport and by car.
The SNUG (Dutch IBM/Lotus User Group) have succeeded in creating a packed and interesting agenda, getting a good venue and sponsors.
More information can be found on the NL-LUG 2009 website: http://www.lug2009.nl.
See you there.
Unsupported trigger on agent after server upgrade to R8.5
For ages we have had agents running called by one central scheduled agent, the "daily scheduled agent launcher" as we call it.
The trigger of these called agents is set to "On event - Agent List selection" and the target is set to "None".
The code used to call the agents from within the "daily scheduled agent launcher" is:
Set agent = db.GetAgent(AgentName)
Call agent.run()
After migrating the server that runs the agents to R8.5, we discovered that one agent in particular was no longer running and produced the "Unsupported trigger and search in background agent" error. In the past we had come across such problems before, where doing the application/server housekeeping like compact & fixup used to help and make the problem go away. But not this time.
Searching the Lotus Developer Domain made me find a response by Julie Kadashevich to look at a troubleshooting agents document in the developer domain. This document gives some clue to the target of the agent being wrong.
This should be set to "None" or "All documents in application (database)" for agents of this event. Which technically means the agent should run as we had set it to "None".
The first attempt to make it run again was resaving the agent. But that still did not make it run. So we changed the target to "All documents in app" and suprise, the agent runs again.
Appearantly "None" is also not a good target for "Agent list" agents.
Any ideas ?
The trigger of these called agents is set to "On event - Agent List selection" and the target is set to "None".
The code used to call the agents from within the "daily scheduled agent launcher" is:
Set agent = db.GetAgent(AgentName)
Call agent.run()
After migrating the server that runs the agents to R8.5, we discovered that one agent in particular was no longer running and produced the "Unsupported trigger and search in background agent" error. In the past we had come across such problems before, where doing the application/server housekeeping like compact & fixup used to help and make the problem go away. But not this time.
Searching the Lotus Developer Domain made me find a response by Julie Kadashevich to look at a troubleshooting agents document in the developer domain. This document gives some clue to the target of the agent being wrong.
This should be set to "None" or "All documents in application (database)" for agents of this event. Which technically means the agent should run as we had set it to "None".
The first attempt to make it run again was resaving the agent. But that still did not make it run. So we changed the target to "All documents in app" and suprise, the agent runs again.
Appearantly "None" is also not a good target for "Agent list" agents.
Any ideas ?
Subscribe to:
Posts (Atom)
