Commit graph

2536 commits

Author SHA1 Message Date
6e5d2061fa chg: allow variable amount of arguments in response methods 2020-03-21 14:36:36 +01:00
5821630d7d fix: removed / replaced orphaned helma links 2020-03-20 21:22:17 +01:00
cd05af552e chg: cast each array element to string 2020-03-20 20:53:13 +01:00
Jürg Lehni
74b927244e Fix sendForward() to define Content-Range header, as required by HTML5 audio and video tags. 2020-03-20 19:53:51 +01:00
Jürg Lehni
a9e1cf3f51 Escape backslash (\) in SQL Strings as they can break queries unescaped. 2020-03-20 19:53:17 +01:00
a9163bd66f chg: moved launcher source files into subproject 2020-03-17 20:49:55 +01:00
e4a36582f7 del: self-made start scripts (generated by gradle now) 2020-03-17 19:20:26 +01:00
387066f34d chg: moved http and xmlrpc port settings into server.properties 2020-03-17 18:29:41 +01:00
7eebeee1d0 chg: replaced ant with gradle 2020-03-17 08:57:53 +01:00
c0cbe38fc5 chg: upgrade dependencies 2020-03-15 12:23:18 +01:00
Daniel Ruthardt
78ccdfced9 Don't assume a specific system class loader.
The issue was encountered using Oracle JDK9 on Debian stretch arm64.
2020-03-15 12:07:19 +01:00
938456e014 chg: upgraded rhino to version 1.7.9 2018-04-29 21:33:01 +02:00
1008524b35 chg: sorted lines 2017-04-17 16:36:46 +02:00
7dc2ffe46c chg: upgraded commons net lib 2017-04-17 16:35:37 +02:00
ffbf863046 Finish goodbye-ajp 2017-04-17 15:35:31 +02:00
e82dd613db fix: null pointer exception
if argument is null in res.debug() / write() / writeln()
2017-04-17 15:32:12 +02:00
468e8a9298 chg: upgraded jetty to version 9.4.3.v20170317
cherry-picked from 390231e8dd
2017-04-17 15:06:14 +02:00
6860ea589e Merge branch 'helma-🐜' into feature/goodbye-ajp 2017-04-17 15:01:47 +02:00
7185214a5d del: inline css styles from helma debug lines 2017-04-17 14:04:41 +02:00
1054413a10 chg: allow variable amount of arguments in response methods 2017-04-17 14:03:54 +02:00
c085492c27 chg: refactored global encodeForm() method to JS 2017-03-19 17:50:18 +01:00
863c622631 chg: refactored global encodeXml() method to JS 2017-03-19 17:38:12 +01:00
12f9e1b1e3 chg: refactored global encode() method to JS 2017-03-19 17:13:20 +01:00
655f965084 chg: refactored global strippedTags() method to JS 2017-03-19 17:11:37 +01:00
7d07ac4f2d chg: updated version string
this is a custom version of helma for antville 1.6
2016-12-17 18:18:31 +01:00
29743f0608 chg: updated rhino to version 1.7.7.1 2016-12-17 18:05:14 +01:00
5f68f40579 wip: removing ajp support 2016-12-17 10:54:39 +01:00
5c0e36e48b add: experimental support for commonjs modules
activated rhino’s require() method and module.exports object; both work, but the default implementation cannot load packages which in turn require modules in relative subdirs.

a new property called commonjs.dir can be used to define an additional search directory. the app dir is added automatically.
2016-12-17 10:36:13 +01:00
c468e8e865 add: support for httponly and secure cookies 2016-12-09 23:49:23 +01:00
2a41085419 Merge branch 'feature/hello-gradle' into helma-🐜 2016-12-04 22:15:23 +01:00
5f0ff9f635 add: gradle files
still using ant targets via importBuild except for dependency management
2016-12-04 22:15:08 +01:00
6e196e857f del: support for Jimi image processing library 2016-12-04 15:59:29 +01:00
dd822d4e24 fix: reference to Base64 is ambiguous, both class java.util.Base64 in java.util and class helma.util.Base64 in helma.util match (Java 8) 2015-12-22 19:36:40 +01:00
948dc9a76b fix: removed encoding of valid unicode characters to html entities 2015-12-13 12:36:37 +01:00
735de0bbf6 fix: re-enabled output of <br> elements in format() method with additional class attribute to signify where it comes from 2015-08-14 14:23:22 +02:00
80dfe53204 chg: removed transformation of linebreaks to <br> or <p> elements in format() method 2015-08-10 14:19:57 +02:00
ed8f6ce9b6 chg: removed transformation to HTML entities, basically only supporting Unicode output (it’s 2015, I think it’s alright) 2015-08-10 14:16:01 +02:00
a7dd487d3e Merge remote-tracking branch 'helma/master' 2015-01-28 19:23:10 +01:00
Simon Oberhammer
dd8f8b6caa bump version 2014-03-12 09:56:29 +01:00
Robert Gaggl
61bafb72d6 partly reverted 5f18e3ae2d:
switched back to using DbSources as Map keys, as using strings breaks switching databases
using DbSource.switchProperties (which is used in jala.Test)
2013-04-09 16:05:07 +02:00
Robert Gaggl
5f18e3ae2d Modified Transactor to store sqlConnections internally using the name of the DbSource
as Map key, not the DbSource instance. Using the instance as key is both inefficient and
error prone (see fd0b77bc11).

Additional changes:
- modified getConnection() to check if the DB is oracle. "SELECT 1" is invalid
for Oracle DBs and lead to Helma dropping in-use connections every minute.
- set DbSource name final
2013-04-09 12:52:06 +02:00
Robert Gaggl
8d9bc3afb1 Next attempt to fix the deadlock issue that lead to fd0b77bc11:
The source of the deadlock problem seems that during DbSource.getConnection() ResourceProperties instances are compared using their equals() method, which is synchronized in Hashtable and can/does lead to deadlocks (see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6582568).

This commit overwrites equals with an unsynchronized version. Note that this implementation might return a wrong result if one of the two instances is modified during this method call, but at least doesn't throw a ConcurrentModificationException.
2013-04-08 17:30:31 +02:00
ff7bba76cf Merge remote-tracking branch 'helma/master'
Conflicts:
	.gitignore
	apps
	modules
2013-04-07 17:18:29 +02:00
Simon Oberhammer
826987d3a2 new interface method ObjectCache.getStatistics
the statistics of a cache instance for an application can be retrieved
by calling `app.__app__.getCacheStatistics()`. That's not very useful for the 
default `ObjectCache` but essential for looking into what more complex cache
impls like `SwarmCache` do

we could remove all the other cache statistics methods like `getCacheUsage` 
and output that info in the map returned by `getCacheStatistics()`

i had to bump java to 1.5 for the generics.. if that's a problem we can
remove the generics
2013-04-04 11:24:56 +02:00
Robert Gaggl
fd0b77bc11 synchronized various methods to avoid deadlock
one of our apps was stuck in a deadlock in ResourceProperties.size(),
see excerpt of the stack trace below. this fix synchronizes various overriding
methods since they are synchronized in Hashtable as well.

removed superfluous toString method too.

```
"app-230":
        at java.util.Hashtable.size(Hashtable.java:206)
        - waiting to lock <0xa13f8548> (a helma.util.ResourceProperties)
        at helma.util.ResourceProperties.size(ResourceProperties.java:529)
        at java.util.Hashtable.equals(Hashtable.java:742)
        - locked <0xa1065708> (a helma.util.ResourceProperties)
        at helma.objectmodel.db.DbSource.equals(DbSource.java:292)
        ...
"app-439":
        at java.util.Hashtable.size(Hashtable.java:206)
        - waiting to lock <0xa1065708> (a helma.util.ResourceProperties)
        at helma.util.ResourceProperties.size(ResourceProperties.java:529)
        at java.util.Hashtable.equals(Hashtable.java:742)
        - locked <0xa13f8548> (a helma.util.ResourceProperties)
        at helma.objectmodel.db.DbSource.equals(DbSource.java:292)
        ...
```
2013-03-06 10:09:50 +01:00
f808a7b7f7 Fixed bug in decodeHttpAuth() causing colons in a password (and everything afterwards) to be swallowed. Note: RFC 2617 explicitely allows colons in passwords, just not in usernames. 2012-11-29 09:39:24 +01:00
Simon Oberhammer
bb4e494ec6 removed extra code for 'org.mortbay' loggers
seems to me this just logs less; let's not do that in code - we can control
loglevel of org.eclipse with -D options just fine.
2012-03-22 17:21:18 +01:00
Simon Oberhammer
503005eac8 switch ContextHandler -> ServletContextHandler
I tried to do what RingoJs does...
2012-03-22 17:21:18 +01:00
Simon Oberhammer
892078eb4e to fix the illegal state exception
i switched the order of app-binding and jetty-server-starting; now it
gets a bit farther but throws another exception:

2012-03-20 10:25:35.550:WARN:oejuc.AbstractLifeCycle:FAILED org.eclipse.jetty.servlet.ServletHandler@177f409c: java.lang.ClassCastException: org.eclipse.jetty.server.handler.ContextHandler cannot be cast to org.eclipse.jetty.servlet.ServletContextHandler
java.lang.ClassCastException: org.eclipse.jetty.server.handler.ContextHandler cannot be cast to org.eclipse.jetty.servlet.ServletContextHandler
	at org.eclipse.jetty.servlet.ServletHandler.doStart(ServletHandler.java:147)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
	at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
	at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97)
	at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:722)
	at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:676)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
	at helma.main.ApplicationManager$AppDescriptor.bind(ApplicationManager.java:550)
	at helma.main.ApplicationManager.startAll(ApplicationManager.java:168)
	at helma.main.Server.run(Server.java:602)
	at java.lang.Thread.run(Thread.java:662)
2012-03-22 17:21:18 +01:00
Simon Oberhammer
aff951c964 replace jar files and jar loading
helma compiles & starts now, but throws this exception:

    java.lang.IllegalStateException: STARTED
  	at org.eclipse.jetty.server.handler.HandlerWrapper.setHandler(HandlerWrapper.java:71)
  	at helma.main.ApplicationManager$AppDescriptor.bind(ApplicationManager.java:482)
	at helma.main.ApplicationManager.startAll(ApplicationManager.java:168)
	at helma.main.Server.run(Server.java:611)
	at java.lang.Thread.run(Thread.java:662)
2012-03-22 17:21:17 +01:00