What is your alternative?
Stay tuned.
Then I guess you're REALLY against SQL, since unlike J2EE, which is pretty
much one-time setup work, SQL is constant tweaking and configuration.
You are putting words in my mouth again. I was specifically referencing DB
conn pooling and NOT SQL. Can you speak to DB conn pooling out of the box?
Again, my experience is it still requires setup, and that is just the
beginning of a long laundry list of setups. We could hit up application
logging next - does EGL come with Log4J (or equivalent) out of the box?
If you consider that too much plumbing, then we have some issues about
what the term "programmer" means.
Ok, so can we get off your high-horse of EGL never having to touch ANY code
outside of the EGL syntax? The reality is that once you get into real-world
apps being driven by user requests, you will most likely have to venture off
the trail IBM has created. In reality you should compound that little bit
of code by an appropriate factor to see what you *might* be dealing with in
the future.
What I would really like to see is a real world EGL application. I know it
will have *some* ugly parts. I just want to evaluate those things so I can
have a balanced opinion vs. what your evangelism is giving us. Note that
your articles are better balanced concerning pros and cons that what you are
typing in the forums - just a side comment I guess.
Bugs? Which ones, Aaron? Crashes? When is the last time it crashed?
Seriously, I'm wondering.
Twice last week. Right now I have four workspaces because after one get's
messed up enough then WDSC just wont work with it anymore. When I try to
start up those workspaces it simply displays a dialog "An error has
occurred. See the log file C:\pathToWDSC\.metadata\.log"
See the bottom of this email for the contents of that .log file. I quit
posting all of the bugs and crashes I get with WDSC because it is so
relative to one's environment it seems that it is near impossible to solve
in a short amount of time. Note that I get considerably less crashes than
the 4.x, 5.x and 6.x days - but it still crashes enough that I couldn't get
rid of SEU/PDM even if I wanted to.
What I have found is that unless I use a limited amount of features in a
limited amount of scenarios, that WDSC is a semi-fragile piece of software.
You won't look at the language on its merits; because it uses an
application server, you are dead set against it.
You make it sound like my generalizations are based on zero experience so
let me give you some "proof". This past week I setup Tomcat on six (6)
different iSeries machines which took way more time than it should have
(roughly 10 hrs). The problem: JDK (1.4) was hosed on two of them so I had
to start Tomcat with a JAVA_HOME of JDK 1.3. I knew the JDK14 was hosed
because I couldn't even get the jar command to work from QShell. After
getting it successfully installed the thing took about 5 to 8 minutes to
start and execute a small servlet. I know a whole bunch of this could be
relative, but the point I am trying to get across is that software stacks
aren't what they used to be on the iSeries and have gone south for the
supposed benefit of getting us somewhere much quicker.
We are leaving behind the days where a single person could be responsible
for an entire business application. I would like to see us get that back.
Maybe I am overzealous in this area; at least that's what Bob Cozzi tells me
:-)
Aaron Bartell
http://mowyourlawn.com
!ENTRY org.eclipse.osgi 4 0 2007-11-16 10:55:26.392
!MESSAGE An error occurred while automatically activating bundle
org.eclipse.core.resources (312).
!STACK 0
org.osgi.framework.BundleException: Exception in
org.eclipse.core.internal.compatibility.PluginActivator.start() of bundle
org.eclipse.core.resources.
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(Un
known Source)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(Unknown
Source)
at org.eclipse.osgi.framework.util.SecureAction.start(Unknown
Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.preFindLocalCla
ss(Unknown Source)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(Unknown
Source)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(Unkn
own Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(Unkno
wn Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(Unknown
Source)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(Unknown
Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(Unknown Source)
at java.lang.J9VMInternals.initialize(Unknown Source)
at org.eclipse.ui.internal.ide.IDEApplication.run(Unknown Source)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown
Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(
Unknown Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Unknown Source)
at org.eclipse.core.launcher.Main.basicRun(Unknown Source)
at org.eclipse.core.launcher.Main.run(Unknown Source)
at org.eclipse.core.launcher.Main.main(Unknown Source)
Caused by: org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree
element /RemoteSystemsConnections/Team/Filters/ibm.jobs400/FilterPool_Team
Filter Pool/filterPool_Team Filter Pool.xmi not found.
at
org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.getData(Unknown
Source)
at
org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.watson.ElementTree.immutable(Unknown
Source)
at org.eclipse.core.internal.resources.SaveManager.restore(Unknown
Source)
at org.eclipse.core.internal.resources.SaveManager.startup(Unknown
Source)
at org.eclipse.core.internal.resources.Workspace.startup(Unknown
Source)
at org.eclipse.core.internal.resources.Workspace.open(Unknown
Source)
at org.eclipse.core.resources.ResourcesPlugin.startup(Unknown
Source)
at
org.eclipse.core.internal.compatibility.PluginActivator.start(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(Unknown
Source)
at java.security.AccessController.doPrivileged(Unknown Source)
... 31 more
Root exception:
org.eclipse.core.internal.dtree.ObjectNotFoundException: Tree element
/RemoteSystemsConnections/Team/Filters/ibm.jobs400/FilterPool_Team Filter
Pool/filterPool_Team Filter Pool.xmi not found.
at
org.eclipse.core.internal.dtree.AbstractDataTree.handleNotFound(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.getData(Unknown
Source)
at
org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.NoDataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.DataDeltaNode.asBackwardDelta(Unknown
Source)
at
org.eclipse.core.internal.dtree.DeltaDataTree.asBackwardDelta(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(Unknown
Source)
at org.eclipse.core.internal.watson.ElementTree.immutable(Unknown
Source)
at org.eclipse.core.internal.resources.SaveManager.restore(Unknown
Source)
at org.eclipse.core.internal.resources.SaveManager.startup(Unknown
Source)
at org.eclipse.core.internal.resources.Workspace.startup(Unknown
Source)
at org.eclipse.core.internal.resources.Workspace.open(Unknown
Source)
at org.eclipse.core.resources.ResourcesPlugin.startup(Unknown
Source)
at
org.eclipse.core.internal.compatibility.PluginActivator.start(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(Unknown
Source)
at java.security.AccessController.doPrivileged(Unknown Source)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(Un
known Source)
at
org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.AbstractBundle.start(Unknown
Source)
at org.eclipse.osgi.framework.util.SecureAction.start(Unknown
Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.preFindLocalCla
ss(Unknown Source)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(Unknown
Source)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(Unkn
own Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(Unkno
wn Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(Unknown
Source)
at
org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(Unknown
Source)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(Unknown
Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(Unknown Source)
at java.lang.J9VMInternals.initialize(Unknown Source)
at org.eclipse.ui.internal.ide.IDEApplication.run(Unknown Source)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown
Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(
Unknown Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Unknown Source)
at org.eclipse.core.launcher.Main.basicRun(Unknown Source)
at org.eclipse.core.launcher.Main.run(Unknown Source)
at org.eclipse.core.launcher.Main.main(Unknown Source)
!ENTRY org.eclipse.osgi 4 0 2007-11-16 10:55:26.392
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org.eclipse.core.resources.IContainer
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(Unknown Source)
at java.lang.J9VMInternals.initialize(Unknown Source)
at org.eclipse.ui.internal.ide.IDEApplication.run(Unknown Source)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(Unknown
Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(
Unknown Source)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Unknown Source)
at org.eclipse.core.launcher.Main.basicRun(Unknown Source)
at org.eclipse.core.launcher.Main.run(Unknown Source)
at org.eclipse.core.launcher.Main.main(Unknown Source)
As an Amazon Associate we earn from qualifying purchases.