log4j generally won't throw exceptions, that's a feature.
You can pass in "-Dlog4j.debug" to get it to print out its own debug. See
log4j manual. On command-line it's just
java -Dlog4j.debug. You don't mention your container/server they differ in what kind of options are easily passed in to the startup scripts.
Or put it in the configuration file (but since it's probably not finding your config file that may not help initially, in xml file it looks like <log4j:configuration debug="true" ...)
Regarding your no logging problem, it probably cannot find the file soni.xml. There's a
servlet example in the manual. Or leave out the call to configure() and just put the file named log4j.xml in the classpath.