IRC Archive for channel #xwiki

Last modified by Vincent Massol on 2012/10/18 19:12

BK33 - (00:00): Is there a way to automatically refresh a page once when you re visit it?
cjdelisle - (00:02): You could add an html meta refersh tag
cjdelisle - (00:02): You want to refresh right away?
BK33 - (00:02): Yes
BK33 - (00:02): like on a back button click or just anytime you visit the page
BK33 - (00:03): I was looking that the meta refresh but i dont think i did it right
cjdelisle - (00:03): Back button can be weird since sometimes the browser saves state and will revisit the same state again.
cjdelisle - (00:04): Thus it thinks it already did the refresh.
BK33 - (00:04): I C
cjdelisle - (00:05): {{velocity}}#if("$request.getParameter('refreshed')" == ''){{html}}<meta http-equiv="refresh" content="5;url=$doc.getUrl()?refreshed=1" />{{/html}}#end{{/velocity
cjdelisle - (00:05): there's a proof of concept for meta refresh.
BK33 - (00:07): so i wouldnt use something like this?  <meta http-equiv="refresh" content="600">
cjdelisle - (00:07): that would refresh every 600 seconds.
BK33 - (00:07): ok
cjdelisle - (00:08): One thing about reloading a page though is some users (me) will feel like their browser is being hijacked and taken somewhere else.
BK33 - (00:11): So sorry this could be a dumb question, im really new and trying to learn but.... could you create something that is like a meta refresh but then stops... so you would set it to  something like content= 1 and it does it once then not again
cjdelisle - (00:13): Well the little script I pasted is a hack to do just that. It passes a parameter "refreshed" and if that parameter exists then it doesn't create the refresh tag again.
cjdelisle - (00:13): Hmm I have a better way...
BK33 - (00:15): k
cjdelisle - (00:16): {{velocity}}#if(!$request.getHeader('referrer').contains($request.getRequestURI())){{html}}<meta http-equiv="refresh" content="5;url=$doc.getUrl()" />{{/html}}#end{{/velocity}}
cjdelisle - (00:16): That compares the referrer to the request uri, if they're the same then it assumes the page has been refreshed.
cjdelisle - (00:17): In which case it doesn't send another refresh tag.
cjdelisle - (00:17): Might need some debugging, I don't have my wiki running (new desktop)
lucaa left at 00:19 (Ping timeout: 252 seconds
BK33 - (00:19): So I would add that line of code then the meta code, and the meta code will refresh once that stop?
BK33 - (00:20): then
cjdelisle - (00:21): That line generates the meta code if it's needed.
cjdelisle - (00:21): Or perhaps not (untested ;)  )
BK33 - (00:22): ok, So make a change and wait 5 seconds ;)
cjdelisle - (00:23): err oh yea content="5
cjdelisle - (00:23): content="0
cjdelisle - (00:23): that should fix it.
BK33 - (00:23): k
cjdelisle - (00:23): copy-paste
BK33 - (00:33): It refreshes right away but only says  getURI( )
cjdelisle - (00:35): getURL()
cjdelisle - (00:36): {{velocity}}#if(!$request.getHeader('referrer').contains($request.getRequestURI())){{html}}<meta http-equiv="refresh" content="5;url=$doc.getURL()" />{{/html}}#end{{/velocity}}
cjdelisle - (00:36): all caps in getURL()
BK33 - (00:39): Sends it into a loop haha
cjdelisle - (00:40): {{velocity}}$request.getHeader('referrer') $request.getRequestURI()  {{/velocity}}
cjdelisle - (00:40): see what that outputs.
BK33 - (00:40): Does nothing
BK33 - (00:41): It displays the URL it was to reload actually but doesnt reload it
BK33 - (00:41): wants
cjdelisle - (00:41): Does it display the same thing twice?
BK33 - (00:42): it displays   {{velocity}}$request.getHeader('referrer') /wiki/bin/preview/BBCode/TopicClassSheet {{/velocity}}
BK33 - (00:42): At the top of the page... but does nothing
cjdelisle - (00:43): oh you're using syntax v 1.0
cjdelisle - (00:44): $request.getHeader('referer')   <-- give that a try, sometimes they misspell referrer
BK33 - (00:44): the Bulletin Board Application must be... because for all my other pages i use 2.0
cjdelisle - (00:45): Oh yea, that. Yup it's pretty old so definitely 1.0
BK33 - (00:46): Thats why I am trying to do this, its annoying to have to hit refresh and see if someone else has posted
cjdelisle - (00:46): Oh it's just for you?
cjdelisle - (00:47): As in, you don't want every user to have this functionality?
BK33 - (00:47): No for our team
BK33 - (00:48): We have people in multiple locations within the united states and it would be nice if it refreshed
cjdelisle - (00:49): Why do you want it to refresh only once? Shouldn't it refresh every 500 seconds or something?
sdumitriu - (00:49): BK33: Let's clearly define what you are trying to achieve
sdumitriu - (00:50): You want the page to refresh automatically every 5 minutes?
BK33 - (00:50): I have noticed that within the Bulletin Board Application, unless you click refresh on the page it doenst refresh
BK33 - (00:50): Sorry if im being confusing
jvdrean joined #xwiki at 00:51
BK33 - (00:51): So say I make a post, then go back to the topics section, I then someone else post I wouldnt know
BK33 - (00:51): If
cjdelisle - (00:53): Refreshing every minute or few minutes forever will make it so you can do something else and when you look at the bulliton board, any new posts will always be there.  Refreshing only once will make sure when you load a page it loads twice but never loads again.
BK33 - (00:54): OOOOOOOH
cjdelisle - (00:55): Based on your need, I'm guessing you are looking for the first option in which case  <meta http-equiv="refresh" content="120" />  should be all you need.
cjdelisle - (00:55): 120 = 2 minutes, adjust to your needs.
BK33 - (00:56): Got it now, Thanks
cjdelisle - (00:56): I just ran git gc on all the repos and tared everything, it's 750MB is that right?
sdumitriu - (00:57): It's a bit too much
cjdelisle - (00:57): is there something other than git gc to run?
sdumitriu - (00:57): I use git gc --prune --aggressive
cjdelisle - (00:59): I will rerun then.  I'm thinking about pulling everything from the svn repo then packing as a .7z and sharing.
sdumitriu - (01:03): Actually it would be better if there was something official
sdumitriu - (01:03): git.xwiki.org
cjdelisle - (01:04): Indeed it would.
BK33 left at 01:05 (Quit: Page closed
sdumitriu - (01:06): Actually 750M should be OK
sdumitriu - (01:10): cjdelisle: If you want to see all the folders that once were in the repo, you can check https://fisheye2.atlassian.com/browse/xwiki
sdumitriu - (01:10): (requires scripts)
cjdelisle - (01:10): this is strange, I built core and now I can't get rid of the /target/ dirs. git clean not effective, git status says nothing to commit.
sdumitriu - (01:11): mvn clean
sdumitriu - (01:11): Or what do you mean "get rid" ?
sdumitriu - (01:11): Git doesn't track folders
cjdelisle - (01:11): set it back to exactly how it was.
sdumitriu - (01:11): Only files
sdumitriu - (01:11): So git is absolutely blind about folders
cjdelisle - (01:12): like svn revert * -R; ~/svn-clean.pl
jvdrean left at 01:16 (Quit: Leaving.
cjdelisle - (01:20): user@debo8:~/wrk/xwiki/platform/core$ git blame ./target/.plxarc
cjdelisle - (01:20): 00000000 (Not Committed Yet 2010-10-05 19:21:00 -0400 1) maven-shared-archive-resources
cjdelisle - (01:20): user@debo8:~/wrk/xwiki/platform/core$ git-clean -df
cjdelisle - (01:35): fixed!
cjdelisle - (01:35): all that stuff was gitignore'd
evalica left at 01:37 (Quit: Leaving.
sdumitriu left at 03:15 (Read error: Operation timed out
abusenius left at 04:04 (Ping timeout: 255 seconds
cjdelisle left at 05:48 (Remote host closed the connection
venkatesh joined #xwiki at 06:09
Denis left at 07:01 (Read error: Connection reset by peer
Denis joined #xwiki at 07:08
vmassol joined #xwiki at 07:17
vmassol left at 07:19 (Client Quit
mflorea joined #xwiki at 07:20
cjdelisle joined #xwiki at 07:33
mflorea left at 07:54 (Quit: Leaving.
mflorea joined #xwiki at 07:56
silviar joined #xwiki at 09:01
lucaa joined #xwiki at 09:06
rrodriguez__ left at 09:12 (Quit: rrodriguez__
evalica joined #xwiki at 09:29
jvdrean joined #xwiki at 09:35
sburjan joined #xwiki at 09:41
asrfel joined #xwiki at 09:45
silviar left at 09:48 (Quit: Leaving.
jvdrean left at 09:49 (Quit: Leaving.
silviar joined #xwiki at 09:51
venkatesh left at 09:52 (Ping timeout: 240 seconds
Enygma` joined #xwiki at 10:06
SvenDowideit left at 10:10 (Read error: Connection reset by peer
SvenDowideit joined #xwiki at 10:14
sdumitriu joined #xwiki at 10:32
fmancinelli joined #xwiki at 10:34
jvdrean joined #xwiki at 10:39
kwoot joined #xwiki at 10:45
cjdelisle - (10:50): On this computer I'm having trouble getting xwiki-gwt-dom to build. I get an `java.net.ConnectException: Connection refused' and I see 2 ports are listened to and neither is the port which it trys to connect to.
lucaa left at 10:53 (Ping timeout: 245 seconds
sdumitriu - (11:03): Did you enable a firewall or something?
cjdelisle - (11:04): Yes but -i lo -j ACCEPT
fmancinelli left at 11:05 (Quit: Lost terminal
rrodriguez joined #xwiki at 11:17
mflorea left at 11:44 (Quit: Leaving.
vmassol joined #xwiki at 12:00
cjdelisle - (12:05): Can anyone who knows more about gwt tell me what might be happening here? http://pastebin.com/nac0nDMm
cjdelisle - (12:06): Is there a particular port I should try capturing packets on?
lucaa joined #xwiki at 12:07
cjdelisle - (12:09): hmm. looks like it thinks it's running on my other computer. It's calling the wrong ip addr.
fmancinelli joined #xwiki at 12:19
arkub joined #xwiki at 12:19
SvenDowideit left at 12:24 (Changing host
SvenDowideit joined #xwiki at 12:24
cjdelisle - (12:25): http://www.zeropaid.com/news/90967/nsa-yelled-at-france-over-three-strikes-legislation/  <-- politics makes for some strange bedfellows.
bauyrzhan joined #xwiki at 12:30
bauyrzhan - (12:30): helo everybody
bauyrzhan - (12:30): can anybody help me with xwiki
bauyrzhan - (12:30): ?
venkatesh joined #xwiki at 12:31
cjdelisle - (12:31): what's the problem?
bauyrzhan - (12:31): i am using xwiki in russian language
bauyrzhan - (12:31): however not all words are being translated
bauyrzhan - (12:31): how can i get into localization file ans do translation on my own?
bauyrzhan - (12:32): and one more, i cant see xwiki/bin directory
bauyrzhan - (12:32): how can i get into that directory?
cjdelisle - (12:32): The localization file is inside of the xwiki-core-<version>.jar
bauyrzhan - (12:33): where can I find that file?
cjdelisle - (12:33): Did you unzip the .war file?
sdumitriu - (12:33): bauyrzhan: What container are you using? Tomcat, or the default Jetty that comes in the standalone distribution?
bauyrzhan - (12:33): I have downloaded xwiki enterprize for windows
bauyrzhan - (12:34): i gues jetty
cjdelisle - (12:34): so you're using the .exe file?
bauyrzhan - (12:34): yyup
bauyrzhan - (12:35): xwiki-enterprise-installer-windows-2.4.3.exe
cjdelisle - (12:36): Hmm. I'm not sure how the .exe file is packed. (I don't run windows)   If you were using the zip file then you could unzip it and you'd find the .jar you're looking for.
sdumitriu - (12:36): Did you find where XWiki was installed?
bauyrzhan - (12:36): yup
sdumitriu - (12:36): There should be a webapps\xwiki\WEB-INF\lib folder
bauyrzhan - (12:36): D:\webapps\xwiki
bauyrzhan - (12:36): ok i can see it
sdumitriu - (12:36): There is xwiki-core-2.something.jar
sdumitriu - (12:37): Since XWiki is a java servlet application, the URLs don't correspond to actual folders
sdumitriu - (12:37): So there's no xwiki/bin folder
sdumitriu - (12:37): If you want to change translations, you have to:
sdumitriu - (12:38): 1. copy xwiki-core-2.*.jar as xwiki-core-2.*.zip (jars are zips with a different extension)
sdumitriu - (12:38): 2. Unpack the zip
sdumitriu - (12:39): 3. Copy ApplicationResources_ru.properties to webapps\xwiki\WEB-INF\classes\
sdumitriu - (12:39): Edit webapps\xwiki\WEB-INF\classes\ApplicationResources_ru.properties
sdumitriu - (12:39): The changes are not automatically detected, you have to restart XWiki if you want to see them
sdumitriu - (12:40): An alternative is to use a wiki document to hold the translations
bauyrzhan - (12:40): ok, give me 5 minutes and i'll be back
bauyrzhan - (12:40): thank s
rrodriguez left at 12:41 (Quit: rrodriguez
silviar left at 12:46 (Quit: Leaving.
bauyrzhan - (12:47): i am back
bauyrzhan - (12:47): Blog.BlogClass_blogType=\u0422\u0438\u043F \u0431\u043B\u043E\u0433\u0430
silviar joined #xwiki at 12:47
bauyrzhan - (12:47): it gives me unicode numbers instead of words
bauyrzhan - (12:48): how can i fix it
rrodriguez joined #xwiki at 12:49
rrodriguez left at 12:52 (Read error: No route to host
cjdelisle - (12:54): haha fixd. I had changed ip after installing but the original ip was statically set in the etc/hosts file.
rrodriguez joined #xwiki at 12:54
bauyrzhan - (12:56): ok chages work
bauyrzhan - (12:56): but when i open ApplicationsResources file
bauyrzhan - (12:56): russian words are written with unicode numbers
bauyrzhan - (12:57): i guess it something to do with my computer
sdumitriu - (12:57): No
sdumitriu - (12:57): You need to convert it to UTF8 and then back to escapes
sdumitriu - (12:57): There's a tool for that
sdumitriu - (12:58): Open a command prompt
sdumitriu - (12:59): native2ascii -reverse -encoding UTF-8 ApplicationResources_ru.properties
sdumitriu - (12:59): To go back to escapes:
sdumitriu - (13:00): native2ascii -encoding UTF-8 ApplicationResources_ru.properties
vmassol - (13:00): sdumitriu: do you plan to commit the email this page feature in RC1 or do you keep it for 2.6?
sdumitriu - (13:01): I hope RC1
mflorea joined #xwiki at 13:03
vmassol - (13:04): RC1 is for next Monday and we shouldn't postpone it. Next is whether this includes a risk for a RC
bauyrzhan - (13:04): got it
bauyrzhan - (13:04): thanks guys
bauyrzhan - (13:05): i just opened applicationresource file in netbeans
bauyrzhan - (13:05): and it worked
bauyrzhan - (13:11): og god, so many words to translate
flaviusolaru joined #xwiki at 13:13
bauyrzhan - (13:16): are you guys developers or just users?
sdumitriu - (13:16): Both
bauyrzhan - (13:33): cool
arkub left at 13:34 (Quit: Leaving
vmassol - (13:36): mflorea: I'd like to consider attachment references as black box in the xwiki-rendering and refactor the code to that effect
vmassol - (13:37): this means for example changing the WikiModel api signature you introduced to:
vmassol - (13:37):     String getAttachmentURL(String attachmentReference);
mflorea - (13:38): hmm, I introduced getImageURL, iirc
vmassol - (13:38):     String getImageURL(String attachmentReference, Map<String, String> parameters);
mflorea - (13:39): ok, this shouldn't be a problem
mflorea - (13:41): getImageURL calls getAttachmentURL, in our implementation so it's just one line to update the implementation
flaviusolaru left at 13:41 (Quit: Leaving.
vmassol - (13:41): yep
vmassol - (13:42): I think it's better to consider the attachment ref as a bloc box
vmassol - (13:42): same as we do for the doc reference
vmassol - (13:42): the only little "downside" is for the ALT attribute that we generate: it would be the full reference name and not just the filename
vmassol - (13:43): if you have any opinion on this, please let me know
mflorea - (13:43): yes, the attachment ref might be independent of the document name in other wikis
vmassol - (13:43): I would have liked to have thomas' opinion but he's offline appareltny
mflorea - (13:44): why do you need this change?
vmassol - (13:44): because I'd like to implement http://jira.xwiki.org/jira/browse/XWIKI-5554 and http://jira.xwiki.org/jira/browse/XWIKI-5549
vmassol - (13:44): I'd need to redo them a lot if I make this refactoring after
mflorea - (13:44): ok
vmassol - (13:45): so I prefer to do the refactoring first
bauyrzhan left at 13:55 (Quit: Page closed
flaviusolaru joined #xwiki at 13:59
rrodriguez left at 14:11 (Quit: rrodriguez
abusenius joined #xwiki at 14:11
rrodriguez joined #xwiki at 14:23
flaviusolaru left at 14:39 (Quit: Leaving.
flaviusolaru joined #xwiki at 14:41
sburjan left at 14:51 (Quit: Ex-Chat
rrodriguez left at 14:59 (Ping timeout: 276 seconds
sdumitriu left at 15:23 (Ping timeout: 264 seconds
venkatesh left at 15:26 (Ping timeout: 255 seconds
tmortagne joined #xwiki at 15:37
tmortagne left at 15:37 (Client Quit
kwoot left at 16:41 (Ping timeout: 265 seconds
silviar left at 17:07 (Quit: Leaving.
asrfel - (17:10): hello guys, does anybody know how to use this type of file ? http://svn.xwiki.org/svnroot/xwiki/platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-message/src/test/resources/macromessage1.test
vmassol - (17:10): asrfel: sure, what is the question?
asrfel - (17:11): well, I have to do a SuccessMessageMacro just as the ones called Info and Error
asrfel - (17:11): and i see there are these test files and i do not know how to use them
vmassol - (17:11): This file is used in http://svn.xwiki.org/svnroot/xwiki/platform/core/trunk/xwiki-rendering/xwiki-rendering-macros/xwiki-rendering-macro-message/src/test/java/org/xwiki/rendering/RenderingTests.java
asrfel - (17:11): in order to write one for success as well
asrfel - (17:12): and this suite is run when doing the build i believe
vmassol - (17:12): yes
asrfel - (17:12): ok, thank you vmassol :)
vmassol - (17:12): np
asrfel left at 17:46 (Quit: Leaving.
flaviusolaru left at 17:55 (Quit: Leaving.
DrPoO left at 17:56 (Remote host closed the connection
flaviusolaru joined #xwiki at 17:58
rrodriguez_ joined #xwiki at 17:59
lucaa left at 18:00 (Ping timeout: 252 seconds
evalica - (18:01): sburjan`: can you test something?
evalica - (18:03): when you're editing the page, you have to double save the page using the shortcut (Alt+Shift+S) in order for the change to be applied. Works ok if you press the Save buttons
evalica - (18:03): for the M2
flaviusolaru left at 18:26 (Quit: Leaving.
flaviusolaru joined #xwiki at 18:28
lucaa joined #xwiki at 18:37
fmancinelli - (18:39): do you know on hudson where can I find the maven output of the enterprise/distribution/jetty/hsqldb module build?
venkatesh joined #xwiki at 18:41
jvdrean - (18:42): fmancinelli: http://hudson.xwiki.org/job/xwiki-product-enterprise/6370/com.xpn.xwiki.products$xwiki-enterprise-jetty-hsqldb/console ?
fmancinelli - (18:43): yep! Thanks
flaviusolaru left at 18:43 (Quit: Leaving.
fmancinelli - (18:43): is it maven 3.0 building the stuff?
jvdrean - (18:44): maven 2.2.0 according to the configuration
fmancinelli - (18:46): ok, so with maven 3.0 that module fails because for some reason the root webapp is unpacked in the root of the final zip (http://pastebin.com/fUukKV7g line 10 and 13)
fmancinelli - (18:46): keep it in mind if you decide to upgrade
fmancinelli - (18:46): :)
flaviusolaru joined #xwiki at 18:48
venkatesh left at 18:50 (Ping timeout: 240 seconds
vmassol left at 18:57 (Quit: Leaving.
asrfel joined #xwiki at 18:58
jvdrean left at 19:04 (Quit: Leaving.
sdumitriu joined #xwiki at 19:06
flaviusolaru left at 19:07 (Quit: Leaving.
venkatesh joined #xwiki at 19:13
flaviusolaru joined #xwiki at 19:16
Enygma` left at 19:29 (Ping timeout: 255 seconds
flaviusolaru left at 19:30 (Quit: Leaving.
rrodriguez_ left at 19:33 (Ping timeout: 245 seconds
mflorea left at 19:33 (Quit: Leaving.
jvdrean joined #xwiki at 19:47
venkatesh left at 19:50 (Quit: Leaving
lucaa left at 19:59 (Ping timeout: 252 seconds
fmancinelli left at 19:59 (Ping timeout: 276 seconds
rrodriguez_ joined #xwiki at 20:16
jvdrean left at 20:17 (Quit: Leaving.
lucaa joined #xwiki at 20:34
florinciu joined #xwiki at 20:55
flaviusolaru joined #xwiki at 21:04
flaviusolaru left at 21:26 (Quit: Leaving.
degro joined #xwiki at 22:23
degro left at 22:31 (Quit: Leaving.
evalica left at 22:44 (Quit: Leaving.
rrodriguez_ left at 23:06 (Ping timeout: 245 seconds
rrodriguez_ joined #xwiki at 23:07
sburjan` - (23:27): sdumitriu ping
sdumitriu - (23:27): Pong
sburjan` - (23:27): I have a short question. I was looking at Grails (Groovy on Rails) ... framework
sburjan` - (23:28): and I see that groovy scripts get compiled
sdumitriu - (23:28): Yes
sburjan` - (23:28): they have a groovyc compiler
sburjan` - (23:28): how do we use groovy within xwiki, where is the compiler ?
sdumitriu - (23:28): It's a Java compiler
sdumitriu - (23:28): It runs in the platform
sburjan` - (23:29): i know. but it's not oldschool javac as I see
sdumitriu - (23:29): No
sburjan` - (23:29): so if a xwiki instance uses groovy scripts, the OS hosting it must have groovyc installed ?
sdumitriu - (23:29): No
sdumitriu - (23:30): It's all Java
sburjan` - (23:30): I don't understand the mechanism
sdumitriu - (23:30): It runs in the JVM
sburjan` - (23:30): i know
sburjan` - (23:30): but javac must support groovy, right ?
sdumitriu - (23:30): No
sburjan` - (23:30): velocity has some jar files that allows it to run
sdumitriu - (23:30): javac is just a tool that converts java source files to classes
sburjan` - (23:31): yes
sdumitriu - (23:31): javac is code that gets executed
sdumitriu - (23:31): groovyc is code that gets executed
sdumitriu - (23:31): It doesn't have to be a standalone program
sburjan` - (23:31): and what converts groovy scripts/files to java source ?
sdumitriu - (23:31): The same process that runs the platform
sdumitriu - (23:32): It creates a thread that does compiling
sdumitriu - (23:32): Like, there's a process that runs in tomcat
sburjan` - (23:32): and we allow only rendering groovy, right ? or we can create groovy classes too ?
sdumitriu - (23:32): At one moment, it starts running the class/function that compiles
sburjan` - (23:32): afaik these are 2 separate things
sdumitriu - (23:33): Compiling is not something extraordinary
sdumitriu - (23:33): It's just code that is executed
sburjan` - (23:33): and the wiki-groovy-plugin converts on the server side the groovy scripts ?
sburjan` - (23:33): something similar to how velocity operates ?
sdumitriu - (23:34): It can either be executed as a new process launched, or it can just be code launched inside a running process, like a servlet thread
sdumitriu - (23:34): Groovy code gets compiled to bytecode, which is then executed by the JVM
sburjan` - (23:35): and what entity converts groovy code to bytecode ? the groovy plugin ?
sdumitriu - (23:35): There are many tools that generate bytecode
sdumitriu - (23:35): javac is the most famous one
sdumitriu - (23:35): But there's the groovy compiler also
sburjan` - (23:35): I see
sdumitriu - (23:35): And other java-based languages
sburjan` - (23:35): and what does XWiki use ?
sdumitriu - (23:35): There are tools that change existing bytecode
sdumitriu - (23:36): For example AspectJ does this
sdumitriu - (23:37): So, since Groovy is a java application that compiles Groovy source code into java bytecode, the Groovy compiler is just java code
sdumitriu - (23:37): And that code can be used in two ways:
sdumitriu - (23:37): As a standalone program, groovyc
sdumitriu - (23:37): Or as a library, like any other library, inside an application
sdumitriu - (23:38): So, to compile some groovy, just call a Java method
sburjan` - (23:38): what I don't understand is that groovy code is not 100% java code... I mean the syntax .. so tehre must be something that converts that groovy code into bytecode that JVN runs after.
sburjan` - (23:38): I see. and we use the second method (library)
sdumitriu - (23:38): Yes
sdumitriu - (23:38): Compiling is simple
sburjan` - (23:39): I see
sdumitriu - (23:39): Parse the file, obtain a logical structure, print it as bytecode
sburjan` - (23:39): and when you say library within the project, you mean the xwiki-groovy-plugin, right ?
sburjan` - (23:40): that comes bundled with default XW
sburjan` - (23:40): *XE
sdumitriu - (23:40): No, that's our wrapper around the Groovy library
sdumitriu - (23:41): groovy-all-1.7.5.jar is the Groovy library
sburjan` - (23:41): I see. and this lib is included in groovy-plugin and wrapped with more custom functionality ?
sdumitriu - (23:42): xwiki-groovy-plugin is the bridge between the wiki, which only knows it has some "groovy content", and the Groovy core which knows what to do with the groovy content
sburjan` - (23:42): I see
sburjan` - (23:43): and I guess Php plugin works a bit diffrent, because that is not translated to bytecode
sburjan` - (23:45): i see Quercus and Resin libs
sdumitriu - (23:50): Well, there are two different kinds of executions
sdumitriu - (23:51): Interpreting and compiling
sdumitriu - (23:51): Whatever gets compiled goes to a similar process
sburjan` - (23:51): yes, but php is only interpreted afaik
sdumitriu - (23:51): No
sdumitriu - (23:51): The default is to interpret, under the PHP implementation
sdumitriu - (23:52): But it can get compiled
sburjan` - (23:52): compiled as what ? what results from a php compile ?
sdumitriu - (23:52): Facebook's new implementation compiles it to machine code
sdumitriu - (23:52): I'm not sure, but I think Quercus compiles it to bytecode
sburjan` - (23:53): so what, and then gets executed by JVM ?
sdumitriu - (23:53): Yes
sburjan` - (23:53): lol
sdumitriu - (23:53): Velocity is interpreted
sburjan` - (23:53): I knew PHP is like CGI
sburjan` - (23:54): request comes, page is interpreted, response thrown back at user
sburjan` - (23:54): on request
sdumitriu - (23:54): No, CGI doesn't mean that
sdumitriu - (23:54): You can write CGIs in C and compile them
sburjan` - (23:54): but apache interprets PHP, right ?
sburjan` - (23:55): not Jakarta (the java version) .. the plain Apache.. sudo-apt get install apache2
sdumitriu - (23:55): By definition, CGI is an executable program that receives an input in a special format, has some environment variables at its disposal, and must print the result in a given format
sdumitriu - (23:55): It doesn't matter how it achieves that
sdumitriu - (23:55): It's not Apache that interprets PHP
sdumitriu - (23:55): It's the PHP Apache module that does it
sburjan` - (23:55): the php module within apache
sburjan` - (23:56): yes
sburjan` - (23:56): but that's still interpreted on request, right ?
sburjan` - (23:56): not compiled or anything
sdumitriu - (23:56): By default, yes
sdumitriu - (23:56): You can speed it up somehow
sburjan` - (23:56): so you can use JVM to speed up php ?
sdumitriu - (23:57): I'm not too knowledgable about it, but I think the Zend engine has something to do with it
sburjan` - (23:57): I'll look into .. for curiosity
sburjan` - (23:57): I knew php is a scripting like language, and all the scripting language is interpreted, not compiled
sdumitriu - (23:57): Technically, Quercus can make PHP faster
sdumitriu - (23:57): Since it compiles it into Java bytecode which is faster
sburjan` - (23:58): yes.. I'm reading now .. Quercus : PHP in Java .. lol
sburjan` - (23:59): and from you know, a php script within xwiki must have a certain complexity ? or only minor stuff are supported ? I am thinking it's pretty hard to translate to bytecode a complex php script

Get Connected