which version do you use?
at my place there are all commented out in the code
johan
On 5/23/07, Herman Bovens <[EMAIL PROTECTED]> wrote:
Hello,
I constantly get these messages in the console window:
ERROR [STDERR] SERIALIZING
SessionPageKey[11CD75D79578ECFFFD9EDDBBC5583ADE,4,0,0, null,
[EMA
that seems some debug info that should be removed
On 5/23/07, Herman Bovens <[EMAIL PROTECTED]> wrote:
Hello,
I constantly get these messages in the console window:
ERROR [STDERR] SERIALIZING
SessionPageKey[11CD75D79578ECFFFD9EDDBBC5583ADE,4,0,0, null,
[EMAIL PROTECTED]
ERROR [STDERR] SERIAL
Yes, both of those things.
On 5/22/07, Jason Schnitzer <[EMAIL PROTECTED]> wrote:
> What would you like to do with Ruby in the Wicket world? Do you want
> the JRuby for the services/activerecord layer?
>
> do you want to construct wicket components in ruby?
>
> Jason
>
> On 5/22/07, Timur Mehrvarz
Hello,
Where is the source code of wicket-examples for current
Java 1.4 trunk? Or does it even exist?
For 1.5 branch it's here alongside wicket, wicket-extensions
etc
http://svn.apache.org/repos/asf/incubator/wicket/trunk/jdk-1.5/
but for 1.4 not
http://svn.apache.org/repos/asf/incubator
Both, web access and anonymous access do not work for me.
Web access points to
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket
and anonymous access to
svn checkout https://svn.apache.org/repos/asf/incubator/wicket/branches/wicket
wicket
Thanks
Ravi.
--
On Tue, 22 May 2007, Martijn Dashorst wrote:
> Could you file an issue with this please? It would be nice to make the
> dtd work better.
Sure, here it is:
https://issues.apache.org/jira/browse/WICKET-587
- Timo
--
Timo Rantalaiho +358-45-6709709
Reaktor Innovations Oyhttp://www
It is currently written using a combination of Struts1, WebMacro
(templating engine like Velocity), Torque etc. Due to the lack of user
interface components in these tools we had to develop a lot of that
ourselves. We are evaluating if we can do away with our code with
Wicket or if Wicket can
Writing my first custom component...
I want to initialise the component using inline Javascript placed
immediately after the component markup.
Searching the message archive I found one solution which is to use a label
to output the script. Seems a bit of a hack.
Is there a better way?
--
Thanks Eelco, your example was extremely helpful and I agree that the API is
not obvious when it comes to this type of stuff. It also doesn't help when
the javadoc for RequestCycle.onRuntimeException refers to
"DefaultExceptionResponseStrategy" which does not exist in 1.3.
Thanks
Craig
Eelco H
What would you like to do with Ruby in the Wicket world? Do you want
the JRuby for the services/activerecord layer?
do you want to construct wicket components in ruby?
Jason
On 5/22/07, Timur Mehrvarz <[EMAIL PROTECTED]> wrote:
> Well, the most obvious thing may be, to start a JRuby interpreter,
thx, igor. I did something similar to that. Regarding your comment that the
data doesn't get loaded when I add the component, I did a test on it and it
calls the new panel every time i do an add:
So, every time I have this line:
add(new AbstractTab(new Model("tab1") { Panel getPanel() { return
I am using a commercial css (dhtml) library for the nav bar in my portal.
When I use the wicket:link to generate my bookmarkable links thing work well
for the most part, except when one navigates to a target page. In the case
of that page the link is rewritten, anchor is removed and em tag inserte
On Tue, 22 May 2007, Flavius wrote:
> I am trying to setVisible on a Fragment using the
> AjaxFormComponentUpdatingBehavior object.
> It doesn't seem to work. I've also tried this with a Panel and that's not
> working either.
How does it not work? What does the Ajax debug console say?
What is the
Hey Nick,
Thanks for that interview on The Server Side[1]! Just came across it.
Eelco
[1] http://www.theserverside.com/news/thread.tss?thread_id=45507
-
This SF.net email is sponsored by DB2 Express
Download DB2 Express C
You can return the page you want to be displayed and have full
control. I know the API currently is non-obvious; I complained about
this in another thread.
For example, this is what I'm using for the project I'm working on:
public Page onRuntimeException(Page page, RuntimeException e
Well, the most obvious thing may be, to start a JRuby interpreter, in
order to gain the ability, to write certain aspects of the Wicket
serverside in dynamic script. I guess.
And to determine how to exchange data going back and forth.
Timur
On 23.05.2007, at 00:44, Mike Pence wrote:
> Are t
Hi, I'm new to wicket and I'm trying to do a sort of nested list of
components, but each
list's item (component) has not just info about the model, but also
has links to delete/modify
itself from the list...
so I have this html code...
Group.html:
Are there any roadblocks, or is it just a matter of figuring out the
type mapping from Java types to Ruby types?
Mike Pence
On 5/22/07, Charles Oliver Nutter <[EMAIL PROTECTED]> wrote:
> Timur Mehrvarz wrote:
> >> I have been doing Rails for about a year and a half now, and I am
> >> wondering if
Timur Mehrvarz wrote:
>> I have been doing Rails for about a year and a half now, and I am
>> wondering if anyone has worked through combining Wicket with JRuby?
>> Seems like the killer combo to me...
It has come up in the past, but I don't know of anyone that's explored
it yet...
- Charlie
--
Since I'm on both lists, I thought, I cross post this quickly. Sounds
interesting.
Timur
http://timur.mobi
On 23.05.2007, at 00:04, Mike Pence wrote:
> Hello all.
>
> I have been doing Rails for about a year and a half now, and I am
> wondering if anyone has worked through combining Wicket wit
Last week somebody mentioned Gricket (Grails + Wicket) on the user list:
http://www.nabble.com/Gricket:-The-Love-Child-of-Grails-and-Wicket-t3772804.html
On 5/22/07, Mike Pence <[EMAIL PROTECTED]> wrote:
Hello all.
I have been doing Rails for about a year and a half now, and I am
wondering if
Hello,
I constantly get these messages in the console window:
ERROR [STDERR] SERIALIZING
SessionPageKey[11CD75D79578ECFFFD9EDDBBC5583ADE,4,0,0, null,
[EMAIL PROTECTED]
ERROR [STDERR] SERIALIZING
SessionPageKey[11CD75D79578ECFFFD9EDDBBC5583ADE,4,0,0, null,
[EMAIL PROTECTED] bytes: [EMAIL PROTECTE
Hello all.
I have been doing Rails for about a year and a half now, and I am
wondering if anyone has worked through combining Wicket with JRuby?
Seems like the killer combo to me...
Best,
Mike Pence
Mike Does Tech -- http://mikepence.wordpress.com
On 5/22/07, wicket0123 <[EMAIL PROTECTED]> wrote:
We are using AjaxTabbedPanel to display data. We don't want to pre-load
all
the data at star up. We want to load the tab's content when user clicks on
the tab. So, we decided to use AjaxTabbedPanel. We are using
AbstractTab.
Each tab represen
what i meant was see how it constructs the message. it overrides
model.getobject(), which is called everytime the component needs to render.
you should read the models page on the wiki.
-igor
On 5/22/07, Tremelune <[EMAIL PROTECTED]> wrote:
Is there an easy way to use this with an ordered li
We are using AjaxTabbedPanel to display data. We don't want to pre-load all
the data at star up. We want to load the tab's content when user clicks on
the tab. So, we decided to use AjaxTabbedPanel. We are using AbstractTab.
Each tab represents a category, so we hold the category id on the tab
Is there an easy way to use this with an ordered list as opposed to a
DataTable? It seems roundabout to define IColumn array to a single-columned,
unlabeled list.
I'm trying to determine if a (possibly overcomplicated) DataTable with a
NavigatorLabel is a better solution than the onAjaxUpdate() t
Okay, I've got the container being passed into the target onAjaxUpdate()...Is
there a method that then gets called on objects passed into the target? I'm
having trouble understanding where I would change the data from "1-3" to
"4-6" (from my previous example).
By "viewed range" I simply mean that
On 5/21/07, Ravindra Wankar <[EMAIL PROTECTED]> wrote:
Thanks. A few things are unclear to me...
1. How do wrap the link that when clicked opens the div with the palette
in it?
2. How can I make this "reusable" so that the div can have something other
than the palette?
3. We have the javascrip
I am trying to setVisible on a Fragment using the
AjaxFormComponentUpdatingBehavior object.
It doesn't seem to work. I've also tried this with a Panel and that's not
working either.
However, if I use a component, like a TextField, that works.
In my java, this is the pertinent code for my Form:
WicketSession.invalidate triggers the httpsession.invalidate that triggers
the destroy
So the destroy shouldn't trigger wicketsession.invalidate because its the
other way around
what you can do is listen to the SessionStore.unbind() or have a special
HttpSessionUnbinding listener
that calls your
i don't think so that looks more like struts.
johan
On 5/22/07, craigdd <[EMAIL PROTECTED]> wrote:
Hey Ravi, just out of curiosity, is the application you provided a link
for
written in wicket?
-Craig
RW wrote:
>
>
>
>
>
>
>
>
> Go to...
>
http://www.celoxis.com/psa/user.do?bxn=umyhome&p_a
i meant you should rather call
document.getElementById('paragraph').onclick()
than
document.getElementById('paragraph').click()
On 5/22/07, Lec <[EMAIL PROTECTED]> wrote:
How do you invoke the eventhandler onclick() within public void onClick(
AjaxRequestTarget target ) and why would you wan
Hey Ravi, just out of curiosity, is the application you provided a link for
written in wicket?
-Craig
RW wrote:
>
>
>
>
>
>
>
>
> Go to...
> http://www.celoxis.com/psa/user.do?bxn=umyhome&p_auth_authenticate=true&p_auth_login=mark&p_auth_password=celoxis1
>
>
> On this page click
yeah, one.
maybe somehow wicket-ajax.js is not included, that would cause ajax to fail.
make sure wicket-ajax.js is included in the head section of the page and
there are no javascript errors.
-igor
On 5/22/07, sf <[EMAIL PROTECTED]> wrote:
Thanks for the reply.
My application does work wi
On 5/22/07, Xavier Hanin <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I've just upgraded my 1.3 beta 1 version to a personnally build
> snapshot version based on revision xxx to fix a problem related to
Oops, forgot to put the revision: 540588
Xavier
--
Thanks for the reply.
My application does work without ajax.
I'm just trying to figure out why the Ajax doesn't work.
it did work from the same browser (Firefox and IE) before I used the portal.
any ideas?
Thanks again,
igor.vaynberg wrote:
>
> if you are using ajaxfallbacklink and get a null
Hi,
I've just upgraded my 1.3 beta 1 version to a personnally build
snapshot version based on revision xxx to fix a problem related to
Ajax and Page Expired, and the problem I had before is gone. Great!
But now I've another strange problem. I get the following error message:
18:49:19.245 [btpool0
see how NavigatorLabel in extensions works
-igor
On 5/22/07, Tremelune <[EMAIL PROTECTED]> wrote:
I've got an ajax pager in a custom panel. Part of this panel displays the
page range (ie, "Viewing items 11-20 of 500"). The panel is constructed
once
when the page is loaded:
public AwesomeP
Overriding the onRuntimeException does not work because you don't have access
to the page that you are directing to. The page parameter in this method if
the context from where the exception was thrown.
-Craig
Rüdiger_Schulz wrote:
>
> Make a subclass of WebRequestCycle, and override onRunti
if you are using ajaxfallbacklink and get a null target then that means the
fallback was used, so the browser doesnt support ajax/javascript. that is
the whole point of ajaxfallbacklink, your impl should look like this
onclick(target) {
dosomething();
if (target!=null) {
// ajax
processaj
What kind of errors?
-Matej
On 5/22/07, Nino Saturnino Martinez Vazquez Wael
<[EMAIL PROTECTED]> wrote:
> Hi
>
> any had trouble with this. My Ajax calls fails with FF 1.5 on macos.
> Also following the wiki any trying the wicket examples fails or gives
> aleast a couple of errors.
>
> regards Ni
oh, provided the wrong link, sorry;
that one is likely to be your answer:
http://cwiki.apache.org/WICKET/how-to-use-ajax-paging-with-dataview.html
what do you mean with "the viewed range" ?? - maybe you didnt put all into a
spanning web-container?
> -Ursprüngliche Nachricht-
> Von: [EMAI
That appears to be a timer-based solution. I would like the panel to update
once and only once when a user clicks on a paging link. Also, to clarify,
the list is getting updated by the "click", but the viewed range is not. So
you have this:
---
* George Michael
* Ezra Lusk
* T-Bone
Viewing items
Thanks for the reply. Not suggesting it should be part of the main
distribution. I am new to the framework and was trying to see if what I
proposed made sense. I want to make sure that I don't hinder or create
barriers to content creation on our portal and wanted to do it in a manner
that made sen
Could you file an issue with this please? It would be nice to make the
dtd work better.
Martijn
On 5/17/07, Timo Rantalaiho <[EMAIL PROTECTED]> wrote:
> On Thu, 17 May 2007, Florian Hehlen wrote:
> > the wicket documentation recommends that a namespace be declared in all
> > xhtml pages like so:
I dont exactly see from your code the error, but the wiki has a page related
to this
http://cwiki.apache.org/WICKET/how-to-repaint-a-listview-via-ajax.html
if you use ajax, then you need to be sure that there is already a markupID
on the output wich is usually not existent in a listview (you could
Ok, but I need my wicket session invalidate() method to be called when
httpSession expires.
I had a look at the source (1.2.6) and what I
saw(AbstractHttpSessionStore.class, line 97) is a call
'SessionStore.unbind(String sessionId)' when HttpSession expires. This
method (in the AbstractHttpSession
I've got an ajax pager in a custom panel. Part of this panel displays the
page range (ie, "Viewing items 11-20 of 500"). The panel is constructed once
when the page is loaded:
public AwesomePanel(final String id) {
...
container.add(pageListView);
container.add(new PagerPanel("page
Well, it's something you can quite easily do yourself. See
org.apache.wicket.examples.customresourceloading. Unless I don't
understand what you mean, it doesn't sound like something that should
be a generic facility in Wicket to me.
Eelco
On 5/22/07, mchack <[EMAIL PROTECTED]> wrote:
>
> I know
Make a subclass of WebRequestCycle, and override onRuntimeException().
Works like a charm for me.
2007/5/22, craigdd <[EMAIL PROTECTED]>:
>
> True the wicket session is mandatory, thanks for pointing that out.
>
> As for my question though, I'm looking for the best way to implement this
> strategy
> 1-Has anyone out there had to defend wicket vs. struts and would you
> have any resources/links/presentations to pass this way to help in
> presenting wicket to our group?
Yeah, a million times now :) Seriously, I think you can find quite a
bit googling (use model 2 vs wicket or something) or se
On 5/22/07, severian <[EMAIL PROTECTED]> wrote:
> specifically not by IE6 (I'd be delighted if I was wrong about this).
Not having touched IE in over a year I am of no use in this regard :).
> Which is why I've been trying to find a maintainable Java solution...
In the very least I would make it
pagemaps are also stored in the httpsession (not in the wicket session)
if the httpsession is destroyed then invalidate on the wicket session
shouldn't be called
because invalidate call on the wicket session does invalidate on the http
session, thats its purpose
but the http session is already in
I see it's a nice idea, but I'm afraid Wicket gets too messy if we'd
support two distinct message models like that. I don't know... maybe
you can open up a feature request for it and we can have it open for
discussion there? I think that the proper class to build something
like this in would be Ses
It should be in sourceforge's wicket-stuff repository somewhere.
Eelco
On 5/22/07, Alex Objelean <[EMAIL PROTECTED]> wrote:
>
> I am very curious to analyze the existing wicket-fvalidate project.. but all
> the reference to it are not valid.
> Can somebody help me to find it?
>
> Thank you!
> --
Martijn
In principle, I agree. In practise, however, I understand that the css
selector that lets you append text is not supported by all browsers, and
specifically not by IE6 (I'd be delighted if I was wrong about this). Which
is why I've been trying to find a maintainable Java solution...
Se
Thanks for the help, Johan.
I know that you stores wicket session in HttpSession(as atribute), provided
by container.
JProfiler shows that some PageMap keeps this. I've tried to get the root of
reference chain but failed due to constant JProfiler error.
Can it be possible that some pagemap instan
This seems more like a stylesheet problem than a text generation
problem. Do /you/ need to change the way things are presented or your
designer?
In stylesheets you can add a * before or after some markup tag, or
make the border red, or have a line under it, or make the text larger.
Martijn
On 5/
* craigdd:
> I'm wondering if there are any other hooks that I can implement
> that leaves the respond method alone but have the exception and
> internal page available.
Have a look at ExceptionErrorPage and IExceptionSettings
--
Jean-Baptiste Quenot
aka John Banana Qwerty
http://caral
in 1.3 you could if you want use a IComponentBorder for that.
johan
On 5/22/07, severian <[EMAIL PROTECTED]> wrote:
OK Erik, it seems like the following works:
class MyContainer extends WebMarkupContainer {
public MyContainer(String id) {
super(id);
}
@Ov
Well, actually, I like that solution.
Erik.
severian wrote:
>
> OK Erik, it seems like the following works:
>
> class MyContainer extends WebMarkupContainer {
> public MyContainer(String id) {
> super(id);
> }
>
> @Override
> protected void on
OK Erik, it seems like the following works:
class MyContainer extends WebMarkupContainer {
public MyContainer(String id) {
super(id);
}
@Override
protected void onComponentTagBody(final MarkupStream markupStream,
final ComponentTag openTag) {
Thanks again Erik. Using WebMarkupContainer rather than Label certainly
seems to help in terms of retaining the template text. Butusing your
specified markup:
Default Label
Is there a way (without further altering the markup) to end up with output
which looks like:
Default Label*
I'd be ha
That should have been:
template:
default value
Result:
default value
Erik.
Erik van Oosten wrote:
>
> Ah! Well, that's easy. Don't add a label, but a AtributeBehavior (or one
> of its subclasses):
>
> template:
> default val
True the wicket session is mandatory, thanks for pointing that out.
As for my question though, I'm looking for the best way to implement this
strategy. I could override the respond method in RequestCycle, but I'd have
to rewrite the given logic, which most of it I want. I'm wondering if there
a
Ah! Well, that's easy. Don't add a label, but a AtributeBehavior (or one of
its subclasses):
template:
default value
Java:
add(new WebMarkupContainer("text").add(new AttributeAppender("class", new
Model("red_border"), " ")));
Result:
default value
I have no knowledge of a way to access the tex
Thanks for that Erik, I may well have to go with that if there are no other
suggestions. But I'm still keen to learn if I can keep the Label text once
I add a "wicket:id" attribute to the label markup.
I may, for example, have to change (later in development) the label-marking
mechanism. So, in
How do you invoke the eventhandler onclick() within public void onClick(
AjaxRequestTarget target ) and why would you want to do that for?
Gerolf Seitz wrote:
>
> you could try to invoke the click eventhandler, that is onclick(). i tried
> it on a simple example and got the same error with cl
You can change the template to:
DefaultValue *
In the java code you do something like:
add(new WebMarkupContainer("marked").setVisible(condition));
Regards,
Erik.
severian wrote:
>
> I'm not sure that what I describe here is possible, but if it is, I'd be
> grateful if someone could po
who does keep the websessions? Can't you see that in your profiler?
we don't hold reference to the object itself anywhere in the code except
when handling a request itself.
johan
On 5/22/07, -Vlad- <[EMAIL PROTECTED]> wrote:
Hi,all.
I've just noted the fact that after the session timeout tim
I know this is topic has been discussed frequently and I fully agree with the
current packaging methodology. There are many case where it would be nice to
have content easily included that was produced by the HTML designer without
having to associate a corresponding java class. I think I have a so
I'm not sure that what I describe here is possible, but if it is, I'd be
grateful if someone could point me in the right direction.
I'd like to allow template designers to give some default text for a lable,
e.g.:
DefaultValue
And I'd then like to be able to either leave that text untouched, or
Hi,all.
I've just noted the fact that after the session timeout time there is a call
to the MyWebApplication.sessionDestroyed(String sessionId) method, as it is
supposed to be.
This method removes data from responce buffer, and that is all.
WebSession object remains in the JVM heap(Tested by mean
wicket is a very good fit for intranet development.
I think it is mostly used in that kind of webapps.
johan
On 5/22/07, Florian Hehlen <[EMAIL PROTECTED]> wrote:
Hi,
the reason we are comparing to Struts is that that's one of the contender.
We are not a web-app shop. We need a general purp
Florian Hehlen wrote:
> Hi,
>
> the reason we are comparing to Struts is that that's one of the
> contender. We are not a web-app shop. We need a general purpose toolkit
> for intranet development. But since struts is so popular it's being
> pitted against wicket.
The thing I took from Matt's
hi all,
i was just wondering, if other users might have thought about the usefulness of
extending FeedbackMessages by a new type ALERT
(and the according classes (Component.alert("message")...).
The reason for this would be, to provide the user special feedback shown
through a javascript alert
Hi,
the reason we are comparing to Struts is that that's one of the
contender. We are not a web-app shop. We need a general purpose toolkit
for intranet development. But since struts is so popular it's being
pitted against wicket.
Florian
Erik van Oosten wrote:
Hi Florian,
1- I am surpris
Hi,
When I try to deploy my wicket application in Liferay, ajax doesnt seem to
work.
eventhough the default value of ajaxable in Liferay is true, I get a null
AjaxRequestTarget on the onclick event of my AjaxFallbackLink.
can anyone advise what to do?
Thanks,
--
View this message in context:
Florian Hehlen wrote:
> Hi all,
>
> I am looking for help presenting wicket to my development team.
>
> 1-Has anyone out there had to defend wicket vs. struts and would you
> have any resources/links/presentations to pass this way to help in
> presenting wicket to our group?
>
> 2-Has anyone m
Hi Florian,
1- I am surprised you want to compare against Struts. Almost any modern web
framework will kick ass compared to Struts.
2- I know only of one. It is the first article on this page on the wiki:
http://cwiki.apache.org/WICKET/articles-about-wicket.html. It has a very
nice comparison of
Hi,
Thanks for the feedback. We are contemplating doing some prototyping. I
am currently implementing a small application within the group with
wicket but it is not clear weather we will have the time to do the same
for struts. On the other hand most people in the group have some level
of exp
can't you make 2 prototypes of the same application with your team and then
see how it works?
3-Objectively, I am also looking for what wicket is weak at.
hope you have a magnifying glass with you then because that is ofcourse hard
to find ;)
But most people would say i guess use of sessio
you could try to invoke the click eventhandler, that is onclick(). i tried
it on a simple example and got the same error with click() in firefox.
onclick() worked like a charm.
hth,
gerolf
On 5/22/07, Lec <[EMAIL PROTECTED]> wrote:
This portion of code works in IE
public void onClick( AjaxR
Hi Jonathan,
developing against a recent trunk I made a strange obeservation which
might be connected to this.
I have a page with several wicketAjaxGet calls. Some of em work fine.
The others behave strange, if clicked/called right after the page was
loaded they are answered with a Page Expire
Hi all,
I am looking for help presenting wicket to my development team.
1-Has anyone out there had to defend wicket vs. struts and would you
have any resources/links/presentations to pass this way to help in
presenting wicket to our group?
2-Has anyone made any measurements/analysis of the cod
if you call form.process() then all the values of the form are processed and
stored to the model
(if the onselectionchange was done with a hidden form submit)
but only form.clear() should clear all input that was stored as a temp
variable in the form components
and then when you rerender it the re
there is always a Wicket Session.
That that session is stored or not in the http session is another question
(so yes the next request you could get a new one, if not stored previously)
johan
On 5/22/07, craigdd <[EMAIL PROTECTED]> wrote:
What if there is no Session available though? Plus I
see the method with the model param:
* @param model
*The model to use for property substitutions in the strings
*(optional)
public String getString(final String key, final Component component,
final IModel model)
throws MissingResourceException
j
Deleting the repository directory doesn't help. I have tried this
earlier, I think that a new repository is created by KronosApplication
and is immediately started and locked, so later a KronosSession cannot
start it again.
Best regards,
Daniel Stoch
On 5/21/07, Daniel Stoch <[EMAIL PROTECTED]> w
This portion of code works in IE
public void onClick( AjaxRequestTarget target )
{
target.appendJavascript("document.getElementById('paragraph').click();")
}
but it DOESN't WORK in FireFox. Using the Wicket Debug console, it said
ERROR: Exception evaluating javascript: TypeError:
document.g
Hi
any had trouble with this. My Ajax calls fails with FF 1.5 on macos.
Also following the wiki any trying the wicket examples fails or gives
aleast a couple of errors.
regards Nino
-
This SF.net email is sponsored by DB2
92 matches
Mail list logo