<< 04-August-2006 : bevinbot on #rife at freenode [download] [back] >>
 
 
time nick message

05:31

<Bevin>

hi

06:09

<Drone>

[svn-3433] [rife] gbevin : Re-activated finally continuations test since JDK 1.5 is pretty baseline nowadays

06:16

<hynek>

hi

06:16

<Bevin>

hi hynek, how's it going?

06:22

<hynek>

Bevin: busy busy...writing my thesis atm, so no time for active rife-fun...got ``vacation''

06:42

<Bevin>

hi j6wbs

06:43

<j6wbs>

hi bevin :)

08:16

<bogghed>

good morning

08:20

<bogghed>

Bevin: What would be the best way to do a dynamic image in a continuation loop in Rife? I need to show 5 distorted characters for the user to type (to verify that they are human). Normally I would just have a servlet generate the image and inject the verify string into the session. What would be best practice in Rife?

08:21

<Bevin>

just keep it in a local variable

08:22

<bogghed>

yes I figured that one out, what about dynamic images?

08:22

<Bevin>

what about it?

08:22

<Bevin>

generate them and stream them out

08:22

<bogghed>

hmm, as Elements?

08:22

<Bevin>

sure

08:23

<bogghed>

ok, I haven't seen any example of this yet, this was just what I wanted to check

08:23

<Bevin>

set the correct content type and stream them out

08:23

<Bevin>

look on the list

08:23

<bogghed>

aha

08:23

<Bevin>

there was a post about this a few weeks ago

08:24

<Bevin>

it's easy though, set the right content type and use getOutputStream

08:25

<bogghed>

I will have it done in a jiffy then

08:25

<Bevin>

*nod*

09:26

<bogghed>

works like a charm

09:27

<Bevin>

kewl :-)

09:28

<Bevin>

how did you generate pass the string on to generate the image?

09:29

<bogghed>

that's the final thing I need to fix

09:30

<Bevin>

hehe

09:30

<Bevin>

curious how you're going to do that

09:30

<bogghed>

me too

09:32

<Bevin>

let me check something for you

09:32

<bogghed>

okie

09:33

<Bevin>

hmmm this could be very easy if I open up an api call

09:34

<Bevin>

you ever built RIFE itself?

09:34

<bogghed>

good idea?

09:34

<bogghed>

no, but it is a small thing I guess

09:35

<bogghed>

want me to check it out?

09:35

<Bevin>

that would be a good idea

09:35

<Bevin>

see, you could provide the continuation id to the image generation element

09:36

<bogghed>

ahh, interesting idea

09:36

<Bevin>

this could then get the continuation context from the continuation manager

09:36

<Bevin>

that context contains a reference to the element instance

09:37

<Bevin>

and you could store that string as a member var

09:37

<Bevin>

and provide a getter to obtain it

09:37

<bogghed>

perfect, then I just have to ask it for the string

09:38

<Bevin>

you'll have to make ElementSupport getElement() public though

09:38

<Bevin>

it's a method on ContinuationContext

09:38

<bogghed>

okie

09:39

<Bevin>

if it works out well, I'll open it up and commit it

09:40

<bogghed>

ok, I am checking it out now

09:50

<Bevin>

bogghed: ant jar is normally enough to build RIFE

10:07

<bogghed>

Bevin: yep, works fine. I am going to write the signup code now and test the mod

10:08

<Bevin>

kewl

11:51

<bogghed>

Bevin: How would you pass the continuation id to the image generation element?

11:52

<Bevin>

input

13:00

<bogghed>

hmm, looks like I have a race condition

13:03

<Bevin>

how so?

13:05

<bogghed>

The embedded element doesn't get the output value. It looks like it is executed before I manage to set it

13:23

<Bevin>

use the + sign before the embedded element ID so that it's processed late

13:23

<Bevin>

bogghed: http://rifers.org/wiki/display/RIFE/Embedded+element+priorities

13:24

<bogghed>

doh :-)

14:04

<bogghed>

Bevin: I had to fall back to using Session to make it work. The idea of passing the continuation id and using getElement() is pretty good, but I have problems getting the variable to the embedded element. Time for an espresso...

14:05

<Bevin>

bogghed: ok, would be good to track down why it's too difficult

14:16

<Drone>

[svn-3434] [rife] gbevin : Added support for the 'format' constraint to bean property injection for all numeric types. Made ContinuationContext.getElement public.

14:20

<frequency31>

Bevin: saw the blog entry :) didn't know i was talking to the jedi master

14:21

<Bevin>

frequency31: hehe

14:22

<frequency31>

we looked at every web framework there is before choosing Rife -- you've done a great job.

14:22

<Bevin>

frequency31: thanks :-)

14:22

<Bevin>

frequency31: what in particular made the decision balance in our favor?

14:26

<frequency31>

of course, some stuff is just poorly implemented and falls out of the running immediately, or it uses some old or non-supported technology as a key piece...

14:27

<Bevin>

frequency31: yeah but that shouldn't be the case with the major players

14:28

<frequency31>

but, in the end, it comes down to the balance between ease of configuration/specialization vs productivity ... that is, is there enough done for you so that you can build things quickly, but not so much that it is a huge challenge if you want to do something "out of the ordinary"

14:29

<frequency31>

you struck a great balance between the RoR-style "get the basics up quickly" and the configurability to handle non-standard application needs

14:30

<Bevin>

wow, thanks, great summary :-)

14:46

<bogghed>

Bevin: Yes, I will have a look at the continuation id problem later. I am trying to roll out some apps in the next few days so I am learning Rife as fast as possible at the moment. Learn by doing more or less :-).

14:47

<Bevin>

bogghed: kewl :-)

14:48

<bogghed>

transferring all my projects to Rife now, beats Spring+Hibernate+Acegi+menutags+sitemesh+webwork+...etc

14:49

<Bevin>

bogghed: wow, great, it would be wonderful if you could write a blog post or an article about your switching experience, many people have been asking for information like that

14:50

<Bevin>

bogghed: if you want a big site to publish an article to, I can help you with that

14:51

<Bevin>

bogghed: tss, java.net. developerworks,...

14:51

<Bevin>

infoq

14:51

<bogghed>

Bevin: hmm, we have been thinking about putting up some free Rife stuff like SMS-schedulers etc

14:51

<Bevin>

that would be awesome too of course

14:53

<Bevin>

bogghed: articles is what is the most badly needed though, certainly about switching

14:54

<Bevin>

bogghed: since people can then easily evaluate why they would go through the trouble of doing so

14:56

<bogghed>

Bevin: our company will use Rife from now on and I think most of the coders I know will find it very interesting to start using Rife as well

14:57

<Bevin>

bogghed: :-)

14:58

<Bevin>

bogghed: if you're able to explain why in a nice article, that might attracts a whole horde and it could be good publicity for your company if it's published on a site like TSS

14:59

<bogghed>

Bevin: yes, it is a good point. I will give it some thought

15:00

<Bevin>

bogghed: great :-)

15:06

<bogghed>

Bevin: I like the setup with the rep switch in Bamboo, good idea

15:07

<Bevin>

bogghed: yeah, it was cool to design that

15:08

<Bevin>

bogghed: makes it very easy to keep to setup and production sites separate and have no performance degradation at all once production is running

15:09

<bogghed>

Bevin: yep, I have adopted it :-)

15:09

<bogghed>

Bevin: I was thinking of making the setup modularized, it would be nice to be able to configure what you want to configure

15:10

<Bevin>

bogghed: the way it's setup in Bamboo is that it only forces you to configure what is needed for the application to be able to run

15:12

<bogghed>

Bevin: yes, but it would be nice to make the setup generalized so one can use it in different projects without code duplication

15:12

<Bevin>

bogghed: hmmm interesting idea

15:13

<bogghed>

Bevin: I thought so too

15:13

<Bevin>

bogghed: feel free to discuss it over at the mailinglist

15:14

<Bevin>

bogghed: could be a good addition to the RIFE/Modules project we're planning

15:14

<bogghed>

Bevin: sure

15:15

<bogghed>

Bevin: Are you talking about the RIFE/Modules on devel? Might be a good idea to lurk there then?

15:15

<Bevin>

yeah

15:16

<Bevin>

I'll be setting up the initial structure this weekend hopefully

15:17

<bogghed>

Okie

15:40

<frequency31>

I'm following the instructions on the In-depth Simple Blog (from the Theater), and I can't get it to create the database structure in Derby...

15:40

<frequency31>

SEVERE: com.uwyn.rife.cmf.dam.contentmanagers.exceptions.InstallContentErrorException: Can't install the content database structure.

15:40

<frequency31>

at com.uwyn.rife.cmf.dam.contentmanagers.databasedrivers.org_apache_derby_jdbc_EmbeddedDriver.install(org_apache_derby_jdbc_EmbeddedDriver.java:131)

15:40

<frequency31>

at com.internalmachine.e60vision.elements.WellAdd$Deployer.deploy(WellAdd.java:70)

15:40

<frequency31>

at com.uwyn.rife.engine.ElementInfo.deploy(ElementInfo.java:280)

15:40

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.setupElements(SiteBuilder.java:982)

15:40

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.setupData(SiteBuilder.java:1610)

15:40

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.finish(SiteBuilder.java:259)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.process(SiteBuilder.java:250)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.setupSubsites(SiteBuilder.java:992)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.setupData(SiteBuilder.java:1611)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.finish(SiteBuilder.java:259)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.process(SiteBuilder.java:250)

15:41

<frequency31>

at com.uwyn.rife.engine.SiteBuilder.getSite(SiteBuilder.java:176)

15:41

<frequency31>

at com.uwyn.rife.rep.participants.ParticipantSite.initialize(ParticipantSite.java:36)

15:41

<frequency31>

at com.uwyn.rife.rep.BlockingParticipant.run(BlockingParticipant.java:252)

15:41

<frequency31>

at java.lang.Thread.run(Unknown Source)

15:41

<frequency31>

Caused by: com.uwyn.rife.database.exceptions.ExecutionErrorException: Error while executing the SQL 'CREATE TABLE ContentRepository (name VARCHAR(100) NOT NULL, repositoryId INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY, CONSTRAINT PK_CONTENTREP PRIMARY KEY (repositoryId), UNIQUE (name), CHECK (name != ''))'.

15:41

<frequency31>

at com.uwyn.rife.database.DbStatement.executeUpdate(DbStatement.java:645)

15:41

<Bevin>

frequency31: don't paste in the channel!!!

15:41

<frequency31>

at com.uwyn.rife.database.DbStatement.executeUpdate(DbStatement.java:672)

15:41

<frequency31>

at com.uwyn.rife.database.DbQueryManager.executeUpdate(DbQueryManager.java:175)

15:41

<frequency31>

at com.uwyn.rife.cmf.dam.contentmanagers.databasedrivers.org_apache_derby_jdbc_EmbeddedDriver.install(org_apache_derby_jdbc_EmbeddedDriver.java:114)

15:41

<frequency31>

... 14 more

15:41

<frequency31>

Caused by: SQL Exception: Schema 'WELL' does not exist

15:41

<frequency31>

at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown Source)

15:41

<frequency31>

at org.apache.derby.impl.jdbc.EmbedStatement.executeUpdate(Unknown Source)

15:41

<frequency31>

at com.uwyn.rife.database.DbStatement.executeUpdate(DbStatement.java:637)

15:41

<frequency31>

... 17 more

15:41

<frequency31>

sorry

15:42

<Bevin>

we have a pastebin for this

15:42

<Bevin>

or the mailinglist

15:42

<Bevin>

next time I'll have to kick you from the channel

15:42

<frequency31>

where is the pastebin?

15:42

<bogghed>

no flood protection in ChanServ :-)?

15:42

<Bevin>

frequency31: see topic

15:42

<frequency31>

:( sorry

15:43

<Bevin>

bogghed: hmm checking

15:44

<bogghed>

Bevin: never mind, just kidding, this is a very civilized channel mostly

15:44

<Drone>

See frequency31's post at http://rifers.org/paste/show/1400

15:45

<frequency31>

there it is -- sorry about that

15:45

<Bevin>

bogghed: no flood protection

15:47

<Bevin>

bogghed: try without any username

15:47

<Bevin>

oops

15:47

<Bevin>

frequency31: try without any username

15:47

<frequency31>

ok

15:48

<Bevin>

frequency31: afaik this is a Derby bug

15:49

<frequency31>

yep -- that's it

15:49

<frequency31>

thanks again

15:49

<Bevin>

frequency31: best take it up with the Derby user list

15:51

<frequency31>

Bevin: ok thanks

15:53

<bogghed>

Bevin: I like the amount of sanity checks you have implemented. It is impossible to make a form that doesn't add up.

15:53

<Bevin>

bogghed: :-) commited even more today

20:15

<Drone>

[svn-3435] [rife] gbevin : Added support for BigDecimal in bean property setting.

Drone v1.4 © 2002-2005 Uwyn RIFE powered