|
FaQ
SubEtha Frequently Asked QuestionsHelp!
Well, you asked for it and here it comes. Drink from the firehose by editing any ResinConfiguration file (ie ${RESIN_HOME}/conf/resin.xml or ${RESIN_HOME}/conf/subetha.xml)<logger name="org.subethamail" level="finest" /> Tech Specs
SubEtha requires JDK1.6 or later.
Because the CDI specification has been a moving target and Resin is still working out issues, the answer to this is not straightforward. The SubEtha v2.0 release specifically requires Resin 4.0.0. The SubEtha v2.1 release requires Resin 4.0.9, and will hopefully work with subsequent versions.
Not currently. J2EE portability is a myth - it's possible to port an application, but it takes a lot of work. We know, we migrated from JBoss to Resin in early 2009. See WhyResin.
Theoretically, any that work with Hibernate and provide reasonable BLOB support. The developers use MySQL and Postgres. We're willing to offer help with other options on the mailing list, but nothing is guaranteed.
Yes. There are two aspects to this: One, SubEtha currently requires an MTA to actually deliver outbound mail. Two, SubEtha can run behind your MTA when ReceivingMail. In the future, it may be possible to use SubEtha without an MTA entirely.
SubEtha's text strings (ie: web interface, error messages, etc.) haven't been internationalized with different languages, but SubEtha should pass messages through written in any language with any character encoding. There are two exceptions to this: Email is always rendered as UTF-8 in the web archives, and list owners may install filters which replace text in the mail message. All substituted text is encoded with the platform default character set. We strongly recommend that you set your JVM's default character set to UTF-8. Please read a more thorough discussion of I18N issues in SubEtha.
JavaMail will parse messages in 8BITMIME just fine. Historically, JavaMail has had problems sending mail with 8BITMIME. Since it seems to work now, we have enabled this by default (see example-subetha.xml). If you think you are having problems, please post to the SubEtha Users mailing list.
This information isn't currently exposed in any meaningful way. Internally there is a number associated with each email address (and remember, there is a 1:N relationship of user to email address) which is something like a bounce count; it is decremented by 1 for each msg sent and incremented by 2 for each bounce received.
The answer to all thees questions is "use the developer API". SubEtha exposes nearly every possible bit of functionality as a Hessian web service. In fact the web UI is built on top of the exact same API (with direct calls rather than RPC, of course). Anything you can do in the web UI, you can automate. Look at the unit tests for an example - they all run against the hessian layer. The API files are all in .i packages in the source tree. You don't need to use Java to call hessian, but the javadocs will help out.
This information is not currently tracked.
If you mean for mass subscribe, then yes you have three options: If you mean when the user explicitly subscribes themselves, then I believe the answer is no. They get an email notification of their subscription. The API method Admin.subscribeEmail() has a silent flag, so you can always build whatever interface you want.
I don't know. It's been a long time since I've thought about this issue, but I suspect it will work. You'd have to try it, and if it doesn't work, we should be able to make a simple patch that takes care of any issues.
Yes. By default the envelope is trusted, but you can add the "Hold All Mail" filter. All messages will be given a HARD hold and a moderator will need to explicitly approve them.
No.
Yes, both from the UI and the API. A list owner can rename the list, but only a site admin can change the email address or URL for the list.
I don't know anything about Shibboleth. There is currently no support for any sort of external authorization system.
Yes. SubEtha is fully transactional, including the queueing systems that send mail out to an MTA. As long as there is no data loss, you can yank the plug on any part of a SubEtha system, plug it back in, and SubEtha will continue where it left off.
For precise information you can look at the code. The hibernate entities which define the data model are in the package org.subethamail.entity. A bit of overview information will probably help though: When an email arrives, it goes through (very roughly) this process: Of course this glosses over a lot (including filters) but that's the general gist. Steps 1-4 are a single transaction, step 5 is a single transaction, and each iteration of step 6 is a single transaction. By the standards of most SMTP-related software, SubEtha should be extraordinarily resilient to failures. Design Questions
We have a few reasons: Huh, Ads
Developing SubEtha was a major effort, requiring several months of fulltime work by several engineers motivated by the bizarre notion "wouldn't it be cool!" The thought that we might be able to get beer money out of this project didn't occur to us until long after the fact. Rather than asking for donations, we've added the least obtrusive google ad we could find to the dead space under the menus. We hope it's not too irritating, but if it is, you are welcome to remove it. We won't be upset.
Run the system at least once (to unpack the war), then edit the file ${resin.dir}/webapps/se/WEB-INF/tags/trim/list.tag. There is a comment next to the HTML that you should remove.
Come now. We went through all this trouble to write SubEtha, the least you can do is put a little effort into your mean (mean!) attempts to circumvent our beer money collection scheme. API
Why, yes there is! |
► Sign in to add a comment