Haluk Dogan | 25 Jun 03:18 2014
Picon

[math] hierarchical clustering implementation

Hi all,

Is there any hierarchical clustering implementation in commons-math? If
not, does somebody know that whether it is in TODO list or not?

Thanks.

--

-- 
HD
Schalk Cronjé | 24 Jun 21:14 2014
Picon

[math] Kolmogorov-Smirnov test on 3.3

I have code simplified to the following:

    KolmogorovSmirnovTest kst = new KolmogorovSmirnovTest();
    NormalDistribution nd = new NormalDistribution(mean,stddev);
    kst.kolmogorovSmirnovTest(nd,dataset)

I find that for my dataset of 10,000 items, the call to 
kolmogorovSmirnovTest takes 'forever'. It has not returned after nearly 
15minutes and gone over 150MB in data usage. I assume this is not 
expected behaviour. Should I log a defect for this?

--

-- 
Schalk W. Cronjé
 <at> ysb33r

James Leskovar | 19 Jun 01:07 2014

Multiplexed connections in commons pool

Hi there,

 

I have an application that needs to perform connection pooling, with the proviso that it's okay - and actually preferable - for more than one client to checkout and use the same connection object from the pool. Ideally, I would also like to limit the number of concurrent clients that are using a single connection object. I'm wondering what the best way to do this is. As a quick and dirty option, I suppose I could basically have my PooledObjectFactory return the same objects from makeObject(), and manually keep track of objects from inside my implementation. Thoughts?

 

Cheers,

James Leskovar
Software Engineer, Location Platforms

TeleCommunication Systems, Inc.

[ Address : TCS, iC Enterprise 1, Innovation Campus, Squires Way, Nth Wollongong, NSW, 2500, Australia ]
[ Tel : +61 2 4221 2940 ] [ Fax : +61 2 4221 2901 ] 
[ Email :
James.Leskovar <at> telecomsys.com ]

 

CONFIDENTIALITY NOTICE: The information contained in this message may be privileged and/or confidential. If you are not the intended recipient, or responsible for delivering this message to the intended recipient, any review, forwarding, dissemination, distribution or copying of this communication or any attachment(s) is strictly prohibited. If you have received this message in error, please notify the sender immediately, and delete it and all attachments from your computer and network.

R.C. Hoekstra | 18 Jun 09:42 2014
Picon

[scxml] profiling scxml commons

Hi all  <at>  scxml commons. 

We had some profiling done on our scxml multi agent simulation project. Our issue is that scxml is too slow.
We need about 100,000 instances of scxml engines for a multi agent simulation, and tests show that the
approach with scxml is over 10 times slower than an alternative but less flexible approach. Still, the
flexibility of the scxml commons project serves us very well, so we need to look for ways to improve the
performance. 

For our project setup see my mailing to this list on Fri, 30 May, 20:45.

We have the following tips and improvements: 

1) Now, there's a logger applied for each instance, which is inefficient. 

Make default Log in SimpleContext static. In SCXMLExecutionContext/SCXMLExecutor, it can be static
final even.
public class SimpleContext implements Context, Serializable {
   /** Implementation independent log category. */
   private static final Log DEFAULT_LOG = LogFactory.getLog(Context.class);
   private  Log log = DEFAULT_LOG;

2)  SimpleContext containsKey() + get() to get()

you can rewrite SimpleContext to:
   public Object get(final String name) {
    Object localValue = getVars().get(name);
       if (localValue!=null) {
return localValue;
       } else if (parent != null) {
           return parent.get(name);
       } else {
           return null;
       }
   }

We think item 1) & 2) will lead to a 30-50% improvement in our scenario, and they are very simple to apply. 

3) Other issues we are not sure about: 

- Status.getAllStates can probably be cached: Difficult to determine if this can be done since the states
member is writable from outside and not sure when this getAllStates() cache should be invalidated. But it
takes up quite some time.

- SCXMLSemanticsImpl.isLegalConfig is probably a paranoia check, can we disable it?

4) Some questions about further speed improvements: 

4a) scripting:

In the configuration as given, about 10% is spend in JEXL scripting. Depending on how much we want to do with
that, we could switch to another scripting implementation (would require some benchmarking) or maybe
move some of the scripts into the Java domain.

Do you guys have any clues about which of the provided scripting implementations is expected to be the
fastest? Are there other possibilities to improve the scripting performance?

4b) initializing / common stuff:

What happens now is that each StateMachine engine (SCXMLExecutor) is instantiated a thousand times, once
for each agent. Maybe it's possible to move some of the stuff to some common initialization where it is now
done for each agent. Do you see any opportunities here?

Thanks, 
kind regards, 

Rinke Hoekstra.
Jian Le | 17 Jun 00:51 2014
Picon

[daemon]

Hi, I would like to submit a minor change to the
commons-daemon-1.0.x-src/src/native/unix/support/apsupport.m4 file such
that it will support the zlinux platform.   However, when I clicked the
Contributing Patches menu item on the left panel of your main page (
http://commons.apache.org/proper/commons-daemon/jsvc.html), it did not
work.   Please let me know the appropriate process for me to submit this
change.   -Jian
sebb | 13 Jun 15:24 2014
Picon

ApacheCon CFP closes June 25

Dear Apache Commons enthusiast,

As you may be aware, ApacheCon will be held this year in Budapest, on
November 17-23. (See http://apachecon.eu for more info.)

The Call For Papers for that conference is still open, but will be
closing soon. We need you talk proposals, to represent Commons at
ApacheCon. We need all kinds of talks - deep technical talks, hands-on
tutorials, introductions for beginners, or case studies about the
awesome stuff you're doing with Apache Commons.

Please consider submitting a proposal, at
http://events.linuxfoundation.org//events/apachecon-europe/program/cfp

Thanks!
Michael Tobias | 11 Jun 09:08 2014
Picon

[CODEC] Beider Morse Phonetic Matching Bug and questions

Does anybody have a working knowledge of the coding of the Beider Morse
Phonetic Matching in the Apache Commons Codec?

My recent tests using Solr suggest there is a discrepancy between Steve
Morse and Alexander Beider's algorithm and the algorithm currently live in
Solr (and hence the Commons Codec).

I know that the source code for BMPM issued by Steve has changed several
times over the years, and I thought at first it might be that the version
used in the Commons Codec is an old version that has subsequently been
overtaken.  Should the version of the BMPM algorithm not be listed in the
Commons Codec documentation? How should version changes to the algorithm be
implemented? The algorithm is quite static now so this is probably not so
important now but surely it should be DOCUMENTED???

My tests now indicate that the discrepancies are NOT a version problem as
testing against a very old version 2.00 of the BMPM source code issued on 18
June 2009 still exhibits the same problem.

Using just a single test term the results are not good. The only saving
grace is that the most widely used version is 

nameType="GENERIC" ruleType="APPROX"

and that is a close (but not perfect) match at least for this ONE test word.

For the name Abram, all with languageSet="auto"

GENERIC APPROX - fails - misses a few tokens

Should create tokens: abram abrom avram avrom obram obrom ovram ovrom abran
abron obran obron Ybram Ybrom

Solr creates: abram abrom avram avrom obram obrom ovram ovrom abran abron
obran obron

GENERIC EXACT - good!

Should create tokens: abram abran

Solr creates: abram abran

ASHKENAZI APPROX: - fails dreadfully!

Should create tokens: abram abrom avram avrom obram obrom ovram ovrom Ybram
Ybrom ombram ombrom imbram imbrom

Solr creates: abrAm AvrAm BbrAm

ASHKENAZI EXACT: - good!

Should create tokens: abram

Solr creates: abram

SEPHARDIC APPROX: - good!

Should create tokens: abram bram abran bran avram vram

Solr creates: abram bram abran bran avram vram

SEPHARDIC EXACT: - good!

Should create tokens: abram abran avram

Solr creates: abram abran avram 

I would appreciate it if somebody with knowledge of the programming of this
functionality could investigate.

For the worst case I attach here a debug trace of the calculation of the
Ashkenazi Approx tokens straight from Steve Morse' implementation. It looks
like some of the final rules are not being implemented properly, or at all.
The language codes in parenthesis vary from BMPM version to version but the
resulting tokens have not changed from version 2.00 up to the current 3.02

Thanks

Michael

applying language rules from (rulesany) to abram using languages 2012

char codes = [#61]a [#62]b [#72]r [#61]a [#6d]m

applying rule #225
   pattern=a
   lcontext=
   rcontext=[bcdgkpstwzż]
   subst=(A|B[128])
   result=(A[2012]|B[128])

applying rule #229
   pattern=b
   lcontext=
   rcontext=
   subst=b
   result=(Ab[2012]|Bb[128])

applying rule #245
   pattern=r
   lcontext=
   rcontext=
   subst=r
   result=(Abr[2012]|Bbr[128])

applying rule #228
   pattern=a
   lcontext=
   rcontext=
   subst=A
   result=(AbrA[2012]|BbrA[128])

applying rule #240
   pattern=m
   lcontext=
   rcontext=
   subst=m
   result=(AbrAm[2012]|BbrAm[128])

after language rules: (AbrAm[2012]|BbrAm[128])

applying final rules from (exactapproxcommon plus approxcommon) to
AbrAm[2012]
no rules match for phonetic item 0 at position 0: A
no rules match for phonetic item 0 at position 1: Ab
no rules match for phonetic item 0 at position 2: Abr
no rules match for phonetic item 0 at position 3: AbrA
no rules match for phonetic item 0 at position 4: AbrAm

applying final rules from (exactapproxcommon plus approxcommon) to
BbrAm[128]
no rules match for phonetic item 1 at position 0: B
no rules match for phonetic item 1 at position 1: Bb
no rules match for phonetic item 1 at position 2: Bbr
no rules match for phonetic item 1 at position 3: BbrA
no rules match for phonetic item 1 at position 4: BbrAm

applying final rules from (approxany) to AbrAm[2012]
after applying final rule #97 to phonetic item #0 at position 0:
(a[2012]|o[2012]|Y[16]) pattern=A lcontext= rcontext= subst=(a|o|Y[16])
after applying final rule #0 to phonetic item #0 at position 1:
(ab[2012]|av[1024]|ob[2012]|ov[1024]|Yb[16]) pattern=b lcontext= rcontext=
subst=(b|v[1024])
no rules match for phonetic item 0 at position 2:
(ab[2012]|av[1024]|ob[2012]|ov[1024]|Yb[16])r
after applying final rule #93 to phonetic item #0 at position 3:
(abra[2012]|abro[2012]|avra[1024]|avro[1024]|obra[2012]|obro[2012]|ovra[1024
]|ovro[1024]|Ybra[16]|Ybro[16]) pattern=A lcontext= rcontext=[fklmnprst]$
subst=(a|o)
no rules match for phonetic item 0 at position 4:
(abra[2012]|abro[2012]|avra[1024]|avro[1024]|obra[2012]|obro[2012]|ovra[1024
]|ovro[1024]|Ybra[16]|Ybro[16])m

applying final rules from (approxany) to BbrAm[128]
after applying final rule #22 to phonetic item #1 at position 0:
(o[2012]|om[128]|im[128]) pattern=B lcontext= rcontext=[bp]
subst=(o|om[128]|im[128])
after applying final rule #0 to phonetic item #1 at position 1:
(ob[2012]|ov[1024]|omb[128]|imb[128]) pattern=b lcontext= rcontext=
subst=(b|v[1024])
no rules match for phonetic item 1 at position 2:
(ob[2012]|ov[1024]|omb[128]|imb[128])r
after applying final rule #93 to phonetic item #1 at position 3:
(obra[2012]|obro[2012]|ovra[1024]|ovro[1024]|ombra[128]|ombro[128]|imbra[128
]|imbro[128]) pattern=A lcontext= rcontext=[fklmnprst]$ subst=(a|o)
no rules match for phonetic item 1 at position 4:
(obra[2012]|obro[2012]|ovra[1024]|ovro[1024]|ombra[128]|ombro[128]|imbra[128
]|imbro[128])m

resulting tokens:

(abram|abrom|avram|avrom|obram|obrom|ovram|ovrom|Ybram|Ybrom|ombram|ombrom|i
mbram|imbrom)

R.C. Hoekstra | 30 May 23:41 2014
Picon

[scxml] Re: Re: Re: our project setup: any tips specifically on performance/speed?

Hi Ate, hi list, 

I can share some more information now, and post some code. 

First of all, on our project: 

No, we don't use threads at the moment. Multithreading seems to become a nightmare with over 100 k engine
instances. 

We also don't use the <datamodel> tags at the moment. As datamodel is still in the planning according to the
roadmap, I found it a bit dangerous to rely on it. Also, it does seem a bit inconvenient for our purpose, but
if that's not the case I'm happy to become convinced of the contrary.

(De)Serialization is not an issue at the moment, though it might become an issue in the future. We're
considering two strategies: Maybe just log every transition and do analysis on that log with some tool. Or
dump the whole population of 100,000 agents / scxmlExecutor instances every now and then at fixed times in
some database structure for further analysis. We are still open to suggestions, what this concerns,
though that is of course not really an scxml issue. 
For the rest: the simulation is just running in memory, and for now that doesn't seem to be a problem for the
hardware. 

So here are some key parts of our code / setup (Ate, I can post them without problems now). 
Main question is: which are the elements which are possibly a bottleneck for the performance, and are there
any alternatives for these elements? 

So the disease is modelled by an human.scxml file which defines the states of the disease. Example:

 	<state id="asymptomatic">
		<onentry>
                        <script>
                            agent.infectivity = 0.2
                        </script>
			<ntd:schedule event="from.asymptomatic" distr="EXPONENTIAL" mean="72 d" chances="0.01"/>
		</onentry>
		<transition event="from.asymptomatic" cond="_event.data == 0" target="symptomatic"/>  			
		<transition event="from.asymptomatic" cond="_event.data == 1" target="fullyRecovered"/>   			
  	</state>

The ntd:schedule tag is responsible for scheduling the transitions in our EventManager. The Action class
responsible for this uses the attributes to draw a random number and schedules the passed event with the
resulting time in our own eventManager. When that scheduled time has come, the eventManager sends the
event back to the state machine instance in order to invoke the transition.
The chances attribute defines the chances for each transition defined: it is a space separated list of
doubles indicating transition chances. In this case the first transition should get a chance of 0.01 of
happening, and as there is no other number given, the final remaining transition gets a chance of 0.99 to
happen. The index number of the transition is passed back via the payload and tested in the cond attribute
of the transition. 

The script tag is responsible for setting agent properties - in this case the infectivity. Each agent has an
own SCXMLExecutor instance, and sets itself to the executor's rootcontext, so it can be accessed in the
scxml files. Each agent is also its own scxml Listener.
All is single threaded. I think the EventManager is smart enough to handle and store 100,000 or more
scheduled events. The EventManager is passed to our own implementation of Evaluator, which is simply a
child class of JexlEvaluator, but with awareness of math (statistic distributions & random number
generator), eventManager and the time running in the simulation. 

Then, we also need to model treatments. So we have one main scxml file with the following content.

	<parallel id="alive">
		<onentry>
                        <!-- this schedules natural death... --> 
			<ntd:schedule event="die.natural" distr="EXPONENTIAL" mean="14600.0 d" />
		</onentry>
		<transition event="die.natural" target="death" />
		
		<state id="biology" src="VL_human.scxml" />
		<state id="treatments" src="VL_treatments.scxml" />
	</parallel>

	<final id="death"/>

So biology definitions define the disease itself, and all its states; treatments define how patients are
treated: subjects will pass states "untreated", "tested" and various possible treatments. As
treatments can happen in various states of the disease, I though it best to use parallel states here. A
treatment raises events which in "biology" will cause the patient to recover. 

I hope this is enough to give a rough picture, and I hope you guys could point out some performance
bottlenecks. I understand however that most performance bottlenecks are expected to be in the
IO/(de)serialization part. 
I could post some more code snippets if that is helpful or interesting.

thanks, best regards, Rinke
R.C. Hoekstra | 30 May 22:45 2014
Picon

[scxml] Re: our project setup: any tips specifically on performance/speed?

Hi Woonsan, Hi Ate, 

(sorry for the late response)

Woonsan wrote:

> If the estimate of the pure SCXML executions can possibly meet your requirements, then I think
> the next thing to consider might be how to reduce IOs if you have to (de)serialize those instances.
> In one of our projects, we initialize a root context and an executor every time before triggering
> events. So, the SCXML definition is responsible for initializing itself (to move the right
> current state) from the given root context (in script blocks). I think this pattern could
> help reduce the amount of (de)serialized data, and so reduce IO.

We haven't given the (de)serialization lots of attention yet. Of course, potentially it can be quite heavy
with a few 100.000 of instances, but I don't know yet what is exactly needed. 
Your pattern sounds interesting, but can you please point out some link to that project, so I can get the real
picture clear? 

thanks for the response, 

Rinke
Oliver Heger | 30 May 21:52 2014
Picon

[ANNOUNCEMENT] Commons BeanUtils 1.9.2 Released

The Apache Commons Team is pleased to announce the availability of
Apache Commons BeanUtils 1.9.2.

The Apache Commons BeanUtils library is a component that provides easy
to use wrappers around the Java Reflection and Introspection capabilities.

Release 1.9.2 is a maintenance release that supports client code in
suppressing specific bean properties. This is useful to protect an
application against uncontrolled access to properties which might be
security relevant. A full list of all changes can be found in the
release notes at
  http://www.apache.org/dist/commons/beanutils/RELEASE-NOTES.txt

Source and binary distributions are available for download from the
Apache Commons download site:
  http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi

When downloading, please verify signatures using the KEYS file available
at the above location when downloading the release.

For complete information on Commons BeanUtils, including instructions
on how to submit bug reports, patches, or suggestions for improvement,
see the Apache Commons BeanUtils website:

http://commons.apache.org/proper/commons-beanutils/

Oliver Heger, on behalf of the Apache Commons community
Joel Harris | 29 May 19:12 2014
Picon

(beanutils) possible problem with beanutils being used by geoserver

Hello,

I'm trying to utilize the Geoserver v2.5 application on glassfish v4 with
security manager enabled.
when I navigate to certain areas in the web application I get a beanutils
exception (toward the bottom of the stack trace below), trying to call a
getter that apparently doesn't exist. I'm not sure why this is aggravated
by enabling security manager, but perhaps it is bubbling up? This exception
does not show up with security manager disabled.

I have to keep security manager enabled, and can not allow "all
permissions" to the application.
Any help would be appreciated.

org.apache.wicket.WicketRuntimeException: Error attaching this container
for rendering: [MarkupContainer [Component id = listContainer]]
at
org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1765)

at org.apache.wicket.Component.onBeforeRender(Component.java:3946)
at org.apache.wicket.Component.internalBeforeRender(Component.java:1071)
at org.apache.wicket.Component.beforeRender(Component.java:1105)
at
org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1753)

at org.apache.wicket.Component.onBeforeRender(Component.java:3946)
at org.apache.wicket.Component.internalBeforeRender(Component.java:1071)
at org.apache.wicket.Component.beforeRender(Component.java:1105)
at
org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1753)

at org.apache.wicket.Component.onBeforeRender(Component.java:3946)
at org.apache.wicket.Page.onBeforeRender(Page.java:1531)
at org.apache.wicket.Component.internalBeforeRender(Component.java:1071)
at org.apache.wicket.Component.beforeRender(Component.java:1105)
at org.apache.wicket.Component.prepareForRender(Component.java:2292)
at org.apache.wicket.Page.prepareForRender(Page.java:1521)
at org.apache.wicket.Component.prepareForRender(Component.java:2329)
at org.apache.wicket.Page.renderPage(Page.java:892)
at
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.respond(BookmarkablePageRequestTarget.java:261)

at
org.apache.wicket.request.AbstractRequestCycleProcessor.respond(AbstractRequestCycleProcessor.java:105)

at
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1258)

at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:545)
at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484)
at
org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:159)

at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)

at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)

at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606) at
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:323)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:321)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:536)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:356)
at
org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:214)

at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1676)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)

at
org.geoserver.wms.animate.AnimatorFilter.doFilter(AnimatorFilter.java:70)
at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70)

at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)

at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:115)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:146)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)

at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)

at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)

at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)

at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)

at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)

at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:134)

at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)

at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)
at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method) at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:48)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:43)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)

at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)

at
org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:90)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:197)

at
org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:194)

at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)

at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)

at
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)

at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)

at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)

at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)

at
org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)

at
org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)

at
org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)

at
org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)

at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)

at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)

at
org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)

at
org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)

at
org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at
org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)

at
org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)

at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)

at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)

at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)

at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)

at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)

at java.lang.Thread.run(Thread.java:744) Caused by:
java.lang.RuntimeException: Could not find property name in class
com.sun.proxy.$Proxy203
at
org.geoserver.web.wicket.GeoServerDataProvider$BeanProperty.getPropertyValue(GeoServerDataProvider.java:507)

at
org.geoserver.web.wicket.GeoServerDataProvider$PropertyComparator.compare(GeoServerDataProvider.java:580)

at java.util.TimSort.countRunAndMakeAscending(TimSort.java:324)
at java.util.TimSort.sort(TimSort.java:189)
at java.util.TimSort.sort(TimSort.java:173)
at java.util.Arrays.sort(Arrays.java:659)
at java.util.Collections.sort(Collections.java:217)
at
org.geoserver.web.wicket.GeoServerDataProvider.iterator(GeoServerDataProvider.java:192)

at
org.apache.wicket.markup.repeater.data.DataViewBase$ModelIterator.<init>(DataViewBase.java:109)

at
org.apache.wicket.markup.repeater.data.DataViewBase.getItemModels(DataViewBase.java:76)

at
org.apache.wicket.markup.repeater.AbstractPageableView.getItemModels(AbstractPageableView.java:107)

at
org.apache.wicket.markup.repeater.RefreshingView.onPopulate(RefreshingView.java:94)

at
org.apache.wicket.markup.repeater.AbstractRepeater.onBeforeRender(AbstractRepeater.java:131)

at
org.apache.wicket.markup.repeater.AbstractPageableView.onBeforeRender(AbstractPageableView.java:121)

at org.apache.wicket.Component.internalBeforeRender(Component.java:1071)
at org.apache.wicket.Component.beforeRender(Component.java:1105)
at
org.apache.wicket.MarkupContainer.onBeforeRenderChildren(MarkupContainer.java:1753)
... 177 more Caused by: java.lang.NoSuchMethodException: Unknown property
'name'
at
org.apache.commons.beanutils.PropertyUtilsBean.getSimpleProperty(PropertyUtilsBean.java:1122)

at
org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:686)

at
org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)

at
org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290)

at
org.geoserver.web.wicket.GeoServerDataProvider$BeanProperty.getPropertyValue(GeoServerDataProvider.java:503)
... 193 more

Gmane