svn commit: r705977 - /tomcat/connectors/trunk/jk/native/common/jk_connect.c

2008-10-19 Thread mturk
Author: mturk
Date: Sun Oct 19 04:09:40 2008
New Revision: 705977

URL: http://svn.apache.org/viewvc?rev=705977&view=rev
Log:
EAGAIN is signaled when socket_timeout is set. When timeout occurs during read 
we break on Windows because there are no EAGAIN there. So break on posix as well

Modified:
tomcat/connectors/trunk/jk/native/common/jk_connect.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_connect.c?rev=705977&r1=705976&r2=705977&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_connect.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_connect.c Sun Oct 19 04:09:40 
2008
@@ -661,6 +661,7 @@
 {
 char dummy[512];
 int rc = 0;
+int rd = 0;
 int save_errno;
 fd_set rs;
 struct timeval tv;
@@ -674,11 +675,16 @@
 }
 
 save_errno = errno;
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG, "About to shutdown socket %d", sd);
+
 /* Shut down the socket for write, which will send a FIN
  * to the peer.
  */
 if (shutdown(sd, SHUT_WR)) {
 rc = jk_close_socket(sd, l);
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG, "Failed sending SHUT_WR for socket %d", 
sd);
 errno = save_errno;
 JK_TRACE_EXIT(l);
 return rc;
@@ -707,6 +713,8 @@
 #else
 rc = read(sd, &dummy[0], sizeof(dummy));
 #endif
+if (rc > 0)
+rd += rc;
 } while (JK_IS_SOCKET_ERROR(rc) && (errno == EINTR || errno == 
EAGAIN));
 
 if (rc <= 0)
@@ -718,6 +726,9 @@
 } while (difftime(time(NULL), start) < MAX_SECS_TO_LINGER);
 
 rc = jk_close_socket(sd, l);
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG, "Shutdown socket %d and read %d lingering 
bytes",
+   sd, rd);
 errno = save_errno;
 JK_TRACE_EXIT(l);
 return rc;
@@ -804,7 +815,7 @@
 #else
 rd = read(sd, (char *)b + rdlen, len - rdlen);
 #endif
-} while (JK_IS_SOCKET_ERROR(rd) && (errno == EINTR || errno == 
EAGAIN));
+} while (JK_IS_SOCKET_ERROR(rd) && errno == EINTR);
 
 if (JK_IS_SOCKET_ERROR(rd)) {
 jk_shutdown_socket(sd, l);



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r705976 - /tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c

2008-10-19 Thread mturk
Author: mturk
Date: Sun Oct 19 03:59:18 2008
New Revision: 705976

URL: http://svn.apache.org/viewvc?rev=705976&view=rev
Log:
Log attempt and retry with [ERROR]

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=705976&r1=705975&r2=705976&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Sun Oct 19 03:59:18 
2008
@@ -1400,14 +1400,18 @@
  * Somebody set them all to disabled?
  */
 jk_log(l, JK_LOG_ERROR,
-   "All tomcat instances failed, no more workers left 
for recovery");
+   "All tomcat instances failed, no more workers "
+   "left for recovery (attempt=%d, retry=%d)",
+   attempt, retry);
 *is_error = JK_HTTP_SERVER_BUSY;
 rc = JK_FALSE;
 }
 }
 else {
 jk_log(l, JK_LOG_ERROR,
-   "All tomcat instances failed, no more workers left");
+   "All tomcat instances failed, no more workers "
+   "left (attempt=%d, retry=%d)",
+   attempt, retry);
 *is_error = JK_HTTP_SERVER_BUSY;
 rc = JK_FALSE;
 }



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r706004 - /tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c

2008-10-19 Thread mturk
Author: mturk
Date: Sun Oct 19 06:13:04 2008
New Revision: 706004

URL: http://svn.apache.org/viewvc?rev=706004&view=rev
Log:
Make sure empty packet is send if client doesn't provide any data and have 
Content-Lenght <> 0

Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c?rev=706004&r1=706003&r2=706004&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Oct 19 
06:13:04 2008
@@ -1586,8 +1586,11 @@
 if (ae->left_bytes_to_send < (jk_uint64_t)AJP13_MAX_SEND_BODY_SZ) {
 len = (int)ae->left_bytes_to_send;
 }
-if ((len = ajp_read_into_msg_buff(ae, s, op->post, len, l)) < 0) {
-/* the browser stop sending data, no need to recover */
+if ((len = ajp_read_into_msg_buff(ae, s, op->post, len, l)) <= 0) {
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "(%s) browser stop sending data, no need to 
recover",
+ae->worker->name);
 op->recoverable = JK_FALSE;
 /* Send an empty POST message since per AJP protocol
  * spec whenever we have content lenght the message
@@ -1606,6 +1609,10 @@
 jk_b_copy(op->post, s->reco_buf);
 s->reco_status = RECO_FILLED;
 }
+if (JK_IS_DEBUG_LEVEL(l))
+jk_log(l, JK_LOG_DEBUG,
+   "(%s) sending %d bytes of request body",
+ae->worker->name, len);
 
 s->content_read = (jk_uint64_t)len;
 rc = ajp_connection_tcp_send_message(ae, op->post, l);



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Small memory leak in mod_jk

2008-10-19 Thread Rainer Jung
Hi,

we have a small memory leak in mod_jk. Every time we restart, we leak a
temporary pool, which we use to resolve addresses. How much memory we
leak depends on the number of workers.

The problem is in common/jk_connect.c, where we create an apr pool to
resolve IP addresses. This pool is never destroyed and after each Apache
restart a new one gets created.

Mladen: is there any clever way of making the pool auto-destroy?
Otherwise we could either use a new pool for each call to jk_resolve and
destroy it at the end of jk_resolve (not nice, but not a big problem,
because jk_resolve only gets calle dduring start/restart), or we nee to
call a jk_connect cleanup function from mod_jk.c itself.

What do you prefer?

Regards,

Rainer


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46038] New: Tomcat JDBC Connection Pool contribution

2008-10-19 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038

   Summary: Tomcat JDBC Connection Pool contribution
   Product: Tomcat 6
   Version: 6.0.18
  Platform: All
   URL: http://svn.hanik.com/svn/repos/filip/dbcp
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: Catalina
AssignedTo: dev@tomcat.apache.org
ReportedBy: [EMAIL PROTECTED]
CC: [EMAIL PROTECTED]


Attached is a contribution of an alternate connection pool to Tomcat.
It includes documentation as well.

I would suggest this connection pool would
a) replace the default connection pool in tomcat-trunk
b) ship as an alternate connection pool in tomcat-6.0.x

Reasons for contribution:
The reasons for this new implementation are documented in jdbc-pool.xml

Main reasons are:
a) JDK independent. you wont get a NoSuchMethodException running the pool with
the new java.sql.* apis in JDK 1.7 even though the it is compiled with 1.5

b) support for highly concurrent environment (performance). On average it is
between 2 to 10 times faster than commons-dbcp

c) simplicity - the core pool is 8 classes to maintain, compared to 60+ with
other implementations

d) flexibility - can easily be extended, also has a pluggable interceptor
framework that lets you plug in custom components to control pool behavior.

e) Maintainable - part of Tomcat core, so simple that anyone can maintain it.
Easier to maintain 8 classes, than have to rewrite 60+ to get another pool to
perform and provide same feature set.

Build from source
svn co --username yjp --password yjp123
http://svn.hanik.com/svn/repos/filip/dbcp
cd dbcp/build
ant


Performance numbers
[EMAIL PROTECTED] 08:38:36: /development/filip/dbcp/build$ JAVA5
[EMAIL PROTECTED] 08:38:36: /development/filip/dbcp/build$ ant run
Buildfile: build.xml

run:
 [java] JUnit version 4.3.1
 [java] .[testDBCPThreads10Connections10]Test complete:9057 ms.
Iterations:100
 [java] .[testPoolThreads10Connections10]Test complete:2015 ms.
Iterations:100
 [java] .[testDBCPThreads20Connections10]Test complete:15332 ms.
Iterations:200
 [java] .[testPoolThreads20Connections10]Test complete:4463 ms.
Iterations:200
 [java] .[testDBCPThreads10Connections10Validate]Test complete:19765 ms.
Iterations:100
 [java] .[testPoolThreads10Connections10Validate]Test complete:2049 ms.
Iterations:100
 [java] .[testDBCPThreads20Connections10Validate]Test complete:43135 ms.
Iterations:200
 [java] .[testPoolThreads20Connections10Validate]Test complete:4639 ms.
Iterations:200
 [java]
 [java] Time: 101.495
 [java]
 [java] OK (8 tests)
 [java]

BUILD SUCCESSFUL
Total time: 1 minute 41 seconds
[EMAIL PROTECTED] 08:40:22: /development/filip/dbcp/build$ JAVA6
[EMAIL PROTECTED] 08:40:28: /development/filip/dbcp/build$ ant run
Buildfile: build.xml

run:
 [java] JUnit version 4.3.1
 [java] .[testDBCPThreads10Connections10]Test complete:2400 ms.
Iterations:100
 [java] .[testPoolThreads10Connections10]Test complete:1919 ms.
Iterations:100
 [java] .[testDBCPThreads20Connections10]Test complete:5570 ms.
Iterations:200
 [java] .[testPoolThreads20Connections10]Test complete:4109 ms.
Iterations:200
 [java] .[testDBCPThreads10Connections10Validate]Test complete:15986 ms.
Iterations:100
 [java] .[testPoolThreads10Connections10Validate]Test complete:2025 ms.
Iterations:100
 [java] .[testDBCPThreads20Connections10Validate]Test complete:38999 ms.
Iterations:200
 [java] .[testPoolThreads20Connections10Validate]Test complete:4336 ms.
Iterations:200
 [java]
 [java] Time: 76.391
 [java]
 [java] OK (8 tests)
 [java]

BUILD SUCCESSFUL
Total time: 1 minute 16 seconds
[EMAIL PROTECTED] 08:41:46: /development/filip/dbcp/build$


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46038] Tomcat JDBC Connection Pool contribution

2008-10-19 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038





--- Comment #1 from Filip Hanik <[EMAIL PROTECTED]>  2008-10-19 07:57:23 PST ---
Created an attachment (id=22756)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22756)
compiled version, source and test cases


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46038] Tomcat JDBC Connection Pool contribution

2008-10-19 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038





--- Comment #2 from Filip Hanik <[EMAIL PROTECTED]>  2008-10-19 07:58:16 PST ---
Created an attachment (id=22757)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22757)
documentation 


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46038] Tomcat JDBC Connection Pool contribution

2008-10-19 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038





--- Comment #3 from Filip Hanik <[EMAIL PROTECTED]>  2008-10-19 08:00:40 PST ---
To migrate from commons-dbcp/tomcat-dbcp to this new pool requires a single
attribute change - factory - in the resource element.

All the other attributes are identical. Making it easy to switch to and back.


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Tomcat connection pool contribution

2008-10-19 Thread Filip Hanik - Dev Lists

gentlemen,

having run into issues with performance around commons-dbcp as number of 
logical cpus increase, no such method exceptions using newer JDKs, I've 
made a small code contribution

https://issues.apache.org/bugzilla/show_bug.cgi?id=46038

description and documentation is in the bug, and attached to the bug as 
an XML document.


I would propose

1. add as default connection pool when type=javax.sql.DataSource in trunk
2. ship as an alternate pool with 6.0.x but not enabled by default

what are your thoughts?

best
Filip

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r706039 - in /tomcat/connectors/trunk/jk/native: apache-1.3/mod_jk.c apache-2.0/mod_jk.c common/jk_ajp_common.c common/jk_connect.c common/jk_connect.h common/jk_service.h iis/jk_isapi_plu

2008-10-19 Thread mturk
Author: mturk
Date: Sun Oct 19 09:03:47 2008
New Revision: 706039

URL: http://svn.apache.org/viewvc?rev=706039&view=rev
Log:
Use optional APR pool used for configuration instead global pool.

Modified:
tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c
tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
tomcat/connectors/trunk/jk/native/common/jk_connect.c
tomcat/connectors/trunk/jk/native/common/jk_connect.h
tomcat/connectors/trunk/jk/native/common/jk_service.h
tomcat/connectors/trunk/jk/native/iis/jk_isapi_plugin.c
tomcat/connectors/trunk/jk/native/netscape/jk_nsapi_plugin.c

Modified: tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c?rev=706039&r1=706038&r2=706039&view=diff
==
--- tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c (original)
+++ tomcat/connectors/trunk/jk/native/apache-1.3/mod_jk.c Sun Oct 19 09:03:47 
2008
@@ -2719,6 +2719,7 @@
 worker_env.uri_to_worker = conf->uw_map;
 worker_env.virtual = "*";   /* for now */
 worker_env.server_name = (char *)ap_get_server_version();
+worker_env.pool = NULL;
 
 if (wc_open(jk_worker_properties, &worker_env, conf->log)) {
 #if MODULE_MAGIC_NUMBER >= 19980527

Modified: tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c?rev=706039&r1=706038&r2=706039&view=diff
==
--- tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c (original)
+++ tomcat/connectors/trunk/jk/native/apache-2.0/mod_jk.c Sun Oct 19 09:03:47 
2008
@@ -3011,6 +3011,7 @@
 #else
 worker_env.server_name = (char *)ap_get_server_version();
 #endif
+worker_env.pool = pconf;
 
 if (wc_open(jk_worker_properties, &worker_env, conf->log)) {
 ap_add_version_component(pconf, JK_EXPOSED_VERSION);

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c?rev=706039&r1=706038&r2=706039&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp_common.c Sun Oct 19 
09:03:47 2008
@@ -2453,7 +2453,7 @@
 
 /* XXX: Why do we only resolve, if port > 1024 ? */
 if (p->port > 1024) {
-if (jk_resolve(p->host, p->port, &p->worker_inet_addr, l)) {
+if (jk_resolve(p->host, p->port, &p->worker_inet_addr, we->pool, 
l)) {
 JK_TRACE_EXIT(l);
 return JK_TRUE;
 }

Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_connect.c?rev=706039&r1=706038&r2=706039&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_connect.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_connect.c Sun Oct 19 09:03:47 
2008
@@ -316,7 +316,8 @@
  * @return JK_FALSE: some kind of error occured
  * JK_TRUE: success
  */
-int jk_resolve(const char *host, int port, struct sockaddr_in *rc, jk_logger_t 
*l)
+int jk_resolve(const char *host, int port, struct sockaddr_in *rc,
+   void *pool, jk_logger_t *l)
 {
 int x;
 struct in_addr laddr;
@@ -342,7 +343,7 @@
 apr_sockaddr_t *remote_sa, *temp_sa;
 char *remote_ipaddr;
 
-if (!jk_apr_pool) {
+if (!(jk_apr_pool = (apr_pool_t *)pool)) {
 if (apr_pool_create(&jk_apr_pool, NULL) != APR_SUCCESS) {
 JK_TRACE_EXIT(l);
 return JK_FALSE;

Modified: tomcat/connectors/trunk/jk/native/common/jk_connect.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_connect.h?rev=706039&r1=706038&r2=706039&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_connect.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_connect.h Sun Oct 19 09:03:47 
2008
@@ -38,7 +38,7 @@
 
 #define JK_SOCKET_EOF  (-2)
 
-int jk_resolve(const char *host, int port, struct sockaddr_in *rc, jk_logger_t 
*l);
+int jk_resolve(const char *host, int port, struct sockaddr_in *rc, void *pool, 
jk_logger_t *l);
 
 jk_sock_t jk_open_socket(struct sockaddr_in *addr, int keepalive,
  int timeout, int connect_timeout,

Modified: tomcat/connectors/trunk/jk/native/common/jk_service.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_service.h?rev=706039&r1=706038&r2=706039&view=diff
===

svn commit: r706041 - /tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c

2008-10-19 Thread mturk
Author: mturk
Date: Sun Oct 19 09:06:35 2008
New Revision: 706041

URL: http://svn.apache.org/viewvc?rev=706041&view=rev
Log:
Use optional APR pool used for configuration instead global pool.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c?rev=706041&r1=706040&r2=706041&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c Sun Oct 19 
09:06:35 2008
@@ -192,7 +192,7 @@
p->name, host, port);
 
 if (port > 1024 && host) {
-if (jk_resolve(host, port, &p->worker_inet_addr, l)) {
+if (jk_resolve(host, port, &p->worker_inet_addr, we->pool, l)) {
 return JK_TRUE;
 }
 jk_log(l, JK_LOG_ERROR,



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Small memory leak in mod_jk

2008-10-19 Thread Mladen Turk

Rainer Jung wrote:


What do you prefer?



Patched by using conf pool that gets destroyed.
Can you double check it doesn't leek any more.

Regards
--
^(TM)

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Small memory leak in mod_jk

2008-10-19 Thread Rainer Jung
Mladen Turk schrieb:
> Rainer Jung wrote:
>>
>> What do you prefer?
>>
> 
> Patched by using conf pool that gets destroyed.
> Can you double check it doesn't leek any more.

Leak gone :)

Thanks.

Rainer

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Building With OpenJDK 1.7.0

2008-10-19 Thread Ole Ersoy

Hi,

I attempted to build Tomcat 6.0.18 with OpenJDK.  I get all sorts of error 
messages (Pasted Below).  Just wondering whether OpenJDK is not supported, or 
whether there is a simple workaround to this (Besides not using OpenJDK :-) ).  
I checked on the users list and was told that Tomcat only builds with JDK 1.5, 
but the documentation says 1.5.x and above...

Thoughts?

Thanks,
- Ole

BUILD ATTEMPT:

build-tomcat-dbcp:
   [copy] Copying 63 files to /usr/share/java/tomcat6-deps/dbcp
   [move] Moving 63 files to 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp
  [javac] Compiling 63 source files to /usr/share/java/tomcat6-deps/dbcp/classes
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/BasicDataSource.java:44:
 org.apache.tomcat.dbcp.dbcp.BasicDataSource is not abstract and does not override 
abstract method isWrapperFor(java.lang.Class) in java.sql.Wrapper
  [javac] public class BasicDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:46:
 org.apache.tomcat.dbcp.dbcp.DelegatingStatement is not abstract and does not 
override abstract method isPoolable() in java.sql.Statement
  [javac] public class DelegatingStatement extends AbandonedTrace implements 
Statement {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:131:
 isClosed() in org.apache.tomcat.dbcp.dbcp.DelegatingStatement cannot implement 
isClosed() in java.sql.Statement; attempting to assign weaker access 
privileges; was public
  [javac] protected boolean isClosed() {
  [javac]   ^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingPreparedStatement.java:50:
 org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement is not abstract and 
does not override abstract method setNClob(int,java.io.Reader) in 
java.sql.PreparedStatement
  [javac] public class DelegatingPreparedStatement extends DelegatingStatement
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingCallableStatement.java:53:
 org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement is not abstract and 
does not override abstract method setNClob(java.lang.String,java.io.Reader) in 
java.sql.CallableStatement
  [javac] public class DelegatingCallableStatement extends 
DelegatingPreparedStatement
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingConnection.java:51:
 org.apache.tomcat.dbcp.dbcp.DelegatingConnection is not abstract and does not 
override abstract method createStruct(java.lang.String,java.lang.Object[]) in 
java.sql.Connection
  [javac] public class DelegatingConnection extends AbandonedTrace
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingResultSet.java:55:
 org.apache.tomcat.dbcp.dbcp.DelegatingResultSet is not abstract and does not 
override abstract method updateNClob(java.lang.String,java.io.Reader) in 
java.sql.ResultSet
  [javac] public class DelegatingResultSet extends AbandonedTrace implements 
ResultSet {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolablePreparedStatement.java:41:
 org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement is not abstract and does 
not override abstract method setNClob(int,java.io.Reader) in 
java.sql.PreparedStatement
  [javac] public class PoolablePreparedStatement extends 
DelegatingPreparedStatement implements PreparedStatement {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingConnection.java:42:
 org.apache.tomcat.dbcp.dbcp.PoolingConnection is not abstract and does not 
override abstract method createStruct(java.lang.String,java.lang.Object[]) in 
java.sql.Connection
  [javac] public class PoolingConnection extends DelegatingConnection 
implements Connection, KeyedPoolableObjectFactory {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingDataSource.java:45:
 org.apache.tomcat.dbcp.dbcp.PoolingDataSource is not abstract and does not override 
abstract method isWrapperFor(java.lang.Class) in java.sql.Wrapper
  [javac] public class PoolingDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/cpdsadapter/ConnectionImpl.java:41:
 org.apache.tomcat.dbcp.dbcp.cpdsadapter.ConnectionImpl is not abstract and 
does not override abstract method 
createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection
  [javac] class ConnectionImpl implements Connection {
  [javac] ^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/cpdsadapter/PooledConnectionImpl.java:43:
 org.ap

Re: Building With OpenJDK 1.7.0

2008-10-19 Thread Mark Thomas
Ole Ersoy wrote:
> Hi,
> 
> I attempted to build Tomcat 6.0.18 with OpenJDK.  I get all sorts of
> error messages (Pasted Below).  Just wondering whether OpenJDK is not
> supported, or whether there is a simple workaround to this (Besides not
> using OpenJDK :-) ).  I checked on the users list and was told that
> Tomcat only builds with JDK 1.5, but the documentation says 1.5.x and
> above...
> 
> Thoughts?

It has to be 1.5 if you want DBCP. Unfortunately Sun keeps changing the
JDBC API in non-compatible ways. You can build with a later JDK if you skip
DBCP.

Mark

> 
> Thanks,
> - Ole
> 
> BUILD ATTEMPT:
> 
> build-tomcat-dbcp:
>[copy] Copying 63 files to /usr/share/java/tomcat6-deps/dbcp
>[move] Moving 63 files to
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp
>   [javac] Compiling 63 source files to
> /usr/share/java/tomcat6-deps/dbcp/classes
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/BasicDataSource.java:44:
> org.apache.tomcat.dbcp.dbcp.BasicDataSource is not abstract and does not
> override abstract method isWrapperFor(java.lang.Class) in
> java.sql.Wrapper
>   [javac] public class BasicDataSource implements DataSource {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:46:
> org.apache.tomcat.dbcp.dbcp.DelegatingStatement is not abstract and does
> not override abstract method isPoolable() in java.sql.Statement
>   [javac] public class DelegatingStatement extends AbandonedTrace
> implements Statement {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:131:
> isClosed() in org.apache.tomcat.dbcp.dbcp.DelegatingStatement cannot
> implement isClosed() in java.sql.Statement; attempting to assign weaker
> access privileges; was public
>   [javac] protected boolean isClosed() {
>   [javac]   ^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingPreparedStatement.java:50:
> org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement is not abstract
> and does not override abstract method setNClob(int,java.io.Reader) in
> java.sql.PreparedStatement
>   [javac] public class DelegatingPreparedStatement extends
> DelegatingStatement
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingCallableStatement.java:53:
> org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement is not abstract
> and does not override abstract method
> setNClob(java.lang.String,java.io.Reader) in java.sql.CallableStatement
>   [javac] public class DelegatingCallableStatement extends
> DelegatingPreparedStatement
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingConnection.java:51:
> org.apache.tomcat.dbcp.dbcp.DelegatingConnection is not abstract and
> does not override abstract method
> createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection
>   [javac] public class DelegatingConnection extends AbandonedTrace
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingResultSet.java:55:
> org.apache.tomcat.dbcp.dbcp.DelegatingResultSet is not abstract and does
> not override abstract method
> updateNClob(java.lang.String,java.io.Reader) in java.sql.ResultSet
>   [javac] public class DelegatingResultSet extends AbandonedTrace
> implements ResultSet {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolablePreparedStatement.java:41:
> org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement is not abstract
> and does not override abstract method setNClob(int,java.io.Reader) in
> java.sql.PreparedStatement
>   [javac] public class PoolablePreparedStatement extends
> DelegatingPreparedStatement implements PreparedStatement {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingConnection.java:42:
> org.apache.tomcat.dbcp.dbcp.PoolingConnection is not abstract and does
> not override abstract method
> createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection
>   [javac] public class PoolingConnection extends DelegatingConnection
> implements Connection, KeyedPoolableObjectFactory {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingDataSource.java:45:
> org.apache.tomcat.dbcp.dbcp.PoolingDataSource is not abstract and does
> not override abstract method isWrapperFor(java.lang.Class) in
> java.sql.Wrapper
>   [javac] public class PoolingDataSource implements DataSource {
>   [javac]^
>   [javac]
> /usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/cpdsadapter/ConnectionImpl.java:41:
> org.apache.tomcat.dbcp.dbcp.cpdsadapter.ConnectionImp

Re: Building With OpenJDK 1.7.0

2008-10-19 Thread Filip Hanik - Dev Lists
yes, that is a known issue due to commons-dbcp uses a delegate pattern 
to implement the java.sql.Connection interface.


a proposed solution for later version of tomcat has been put into bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038

for now, you would have to comment out the tomcat-dbcp build out of the 
build script


Filip

Ole Ersoy wrote:

Hi,

I attempted to build Tomcat 6.0.18 with OpenJDK.  I get all sorts of 
error messages (Pasted Below).  Just wondering whether OpenJDK is not 
supported, or whether there is a simple workaround to this (Besides 
not using OpenJDK :-) ).  I checked on the users list and was told 
that Tomcat only builds with JDK 1.5, but the documentation says 1.5.x 
and above...


Thoughts?

Thanks,
- Ole

BUILD ATTEMPT:

build-tomcat-dbcp:
   [copy] Copying 63 files to /usr/share/java/tomcat6-deps/dbcp
   [move] Moving 63 files to 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp
  [javac] Compiling 63 source files to 
/usr/share/java/tomcat6-deps/dbcp/classes
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/BasicDataSource.java:44: 
org.apache.tomcat.dbcp.dbcp.BasicDataSource is not abstract and does 
not override abstract method isWrapperFor(java.lang.Class) in 
java.sql.Wrapper

  [javac] public class BasicDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:46: 
org.apache.tomcat.dbcp.dbcp.DelegatingStatement is not abstract and 
does not override abstract method isPoolable() in java.sql.Statement
  [javac] public class DelegatingStatement extends AbandonedTrace 
implements Statement {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:131: 
isClosed() in org.apache.tomcat.dbcp.dbcp.DelegatingStatement cannot 
implement isClosed() in java.sql.Statement; attempting to assign 
weaker access privileges; was public

  [javac] protected boolean isClosed() {
  [javac]   ^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingPreparedStatement.java:50: 
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement is not 
abstract and does not override abstract method 
setNClob(int,java.io.Reader) in java.sql.PreparedStatement
  [javac] public class DelegatingPreparedStatement extends 
DelegatingStatement

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingCallableStatement.java:53: 
org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement is not 
abstract and does not override abstract method 
setNClob(java.lang.String,java.io.Reader) in java.sql.CallableStatement
  [javac] public class DelegatingCallableStatement extends 
DelegatingPreparedStatement

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingConnection.java:51: 
org.apache.tomcat.dbcp.dbcp.DelegatingConnection is not abstract and 
does not override abstract method 
createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection

  [javac] public class DelegatingConnection extends AbandonedTrace
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingResultSet.java:55: 
org.apache.tomcat.dbcp.dbcp.DelegatingResultSet is not abstract and 
does not override abstract method 
updateNClob(java.lang.String,java.io.Reader) in java.sql.ResultSet
  [javac] public class DelegatingResultSet extends AbandonedTrace 
implements ResultSet {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolablePreparedStatement.java:41: 
org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement is not abstract 
and does not override abstract method setNClob(int,java.io.Reader) in 
java.sql.PreparedStatement
  [javac] public class PoolablePreparedStatement extends 
DelegatingPreparedStatement implements PreparedStatement {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingConnection.java:42: 
org.apache.tomcat.dbcp.dbcp.PoolingConnection is not abstract and does 
not override abstract method 
createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection
  [javac] public class PoolingConnection extends DelegatingConnection 
implements Connection, KeyedPoolableObjectFactory {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingDataSource.java:45: 
org.apache.tomcat.dbcp.dbcp.PoolingDataSource is not abstract and does 
not override abstract method isWrapperFor(java.lang.Class) in 
java.sql.Wrapper

  [javac] public class PoolingDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/cpdsadapter/ConnectionImpl.java:41: 

svn commit: r706071 - /tomcat/trunk/java/org/apache/jasper/compiler/Generator.java

2008-10-19 Thread markt
Author: markt
Date: Sun Oct 19 14:26:40 2008
New Revision: 706071

URL: http://svn.apache.org/viewvc?rev=706071&view=rev
Log:
Fix the remaining EL / TCK issues. With this patch the EL TCK tests pass and my 
test cases for bugs 42565, 44994, 45015, 45451, 45427, 45511 and some 
additional tests for edge cases all pass.

Modified:
tomcat/trunk/java/org/apache/jasper/compiler/Generator.java

Modified: tomcat/trunk/java/org/apache/jasper/compiler/Generator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/jasper/compiler/Generator.java?rev=706071&r1=706070&r2=706071&view=diff
==
--- tomcat/trunk/java/org/apache/jasper/compiler/Generator.java (original)
+++ tomcat/trunk/java/org/apache/jasper/compiler/Generator.java Sun Oct 19 
14:26:40 2008
@@ -806,8 +806,8 @@
 }
 return v;
 } else if (attr.isELInterpreterInput()) {
-v = JspUtil.interpreterCall(this.isTagFile, v, expectedType,
-attr.getEL().getMapName(), false);
+v = attributeValueWithEL(this.isTagFile, v, expectedType,
+attr.getEL().getMapName());
 if (encode) {
 return 
"org.apache.jasper.runtime.JspRuntimeLibrary.URLEncode("
 + v + ", request.getCharacterEncoding())";
@@ -824,6 +824,68 @@
 }
 }
 
+
+/*
+ * When interpreting the EL attribute value, literals outside the EL
+ * must not be unescaped but the EL processor will unescape them.
+ * Therefore, make sure only the EL expressions are processed by the EL
+ * processor.
+ */
+private String attributeValueWithEL(boolean isTag, String tx,
+Class expectedType, String mapName) {
+if (tx==null) return null;
+int size = tx.length();
+StringBuffer output = new StringBuffer(size);
+boolean el = false;
+int i = 0;
+int mark = 0;
+char ch;
+
+while(i < size){
+ch = tx.charAt(i);
+
+// Start of an EL expression
+if (!el && i+1 < size && ch == '$' && tx.charAt(i+1)=='{') {
+if (mark < i) {
+if (output.length() > 0) {
+output.append(" + ");
+}
+output.append(quote(tx.substring(mark, i)));
+}
+mark = i;
+el = true;
+i += 2;
+} else if (ch=='\\' && i+1 < size &&
+(tx.charAt(i+1)=='$' || tx.charAt(i+1)=='}')) { 
+// Skip an escaped $ or }
+i += 2;
+} else if (el && ch=='}') {
+// End of an EL expression
+if (output.length() > 0) {
+output.append(" + ");
+}
+output.append(
+JspUtil.interpreterCall(isTag,
+tx.substring(mark, i+1), expectedType,
+mapName, false));
+mark = i + 1;
+el = false;
+++i;
+} else {
+// Nothing to see here - move to next character
+++i;
+}
+}
+if (!el && mark < i) {
+if (output.length() > 0) {
+output.append(" + ");
+}
+output.append(quote(tx.substring(mark, i)));
+}
+return output.toString();
+}
+
+
 /**
  * Prints the attribute value specified in the param action, in the 
form
  * of name=value string.
@@ -2836,8 +2898,8 @@
 // run attrValue through the expression interpreter
 String mapName = (attr.getEL() != null) ? attr.getEL()
 .getMapName() : null;
-attrValue = JspUtil.interpreterCall(this.isTagFile,
-attrValue, c[0], mapName, false);
+attrValue = attributeValueWithEL(this.isTagFile,
+attrValue, c[0], mapName);
 }
 } else {
 attrValue = convertString(c[0], attrValue, localName,



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Using JSF Converter to handle NULL values for empty Strings ""

2008-10-19 Thread Alexander Hartner
I am using a JSF convert to convert empty string submitted to null  
values. I am able to see the converter doing it's thing and returning  
null as expected, however the controller is not updated with a null  
value, but an empty string instead. I then had a dig around online for  
the cause of the problem and found the problem to be related to the  
version of tomcat being used:


I came accross this post online :

http://forums.sun.com/thread.jspa?forumID=427&threadID=5273588

and then tried 6.0.18 and 6.0.14. Previously I was using 6.0.16. The  
problem indeed does not appear in 6.0.14, however both 6.0.16 and 18  
are affected by it.


I found some other posts on this issue as well :

http://www.icefaces.org/JForum/posts/list/8024.page and 
https://issues.apache.org/jira/browse/MYFACES-1979

I wonder what has changed, and how I can fix this
Alex

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Building With OpenJDK 1.7.0

2008-10-19 Thread Ole Ersoy

OK - I commented out the DBCP specific targets, and it builds fine.

I'll paste the altered build file below in case anyone else follows the thread 
and wants to give it a whirl.

Thanks again for the heads up.  


Ole







 

 
 
 
 

 

 
 
 
 
 
 
 
 
 

 
 
 

 
 
 
 
 
 

 
 

 
 
 

 
 
 
 
 
 
 
 
 

 
 

 
 
 
 

 
 
   
   
 

 
 

   

   

   
   


   
   
   
   
   

 

 

   
   

 
 
   
   
 
 
   
   

   
   
   
   
 
   
   
   
   
   
 
   

 

 

 

   
   
 
   
   
   
   
   
   
   
   
 
   

   
   
 
   
   
   
   
   
   
 
   

   
   
 
   
   
   
   
 
   

   
   
 
   
   
   
   
 
   

   
  manifest="res/bootstrap.jar.manifest">

 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 
   

   
   
 
   
   
   
   
 
   

   
   
 
   
   
   
   
   
   
   
   
   
   
   
   
   
   
 
   
   
   

   
 
   
   
   
   
 
   
   
   
 
   
   
   
   
 
   

   
   
 
   
   
   
   
   
   
 
   

   
   
 
   
   
   
   
   
   
   
 
   

   
   
 
   
   
   
   
   
 
   

   
   
 
   
   
   
   
 
   

   
   
 
   
 
   
   
 
   
 
   
   
 
   
 
   

 

 

   
 
   
   
   
   
   
 
   
 
 
   
   
   
 
   
   
   
 
   
   
filtering="true" />


   




   
 
   
   
 
   
   
 
   
   
 
   
   
 
   
   
   
  destdir="${tomcat.build}/webapps/docs/tribes"
extension=".html"
style="webapps/docs/tomcat-docs.xsl"
 excludes="project.xml"
 includes="*.xml">
 
   



   
 
   
   
   
 
   

   
   
 
   
   

   
   


 
 
   
   
 
 
   
   
 
 
   
   
 
 
   
   
 
 
   

 

 

   

   
   


   
 

 
   


   
 
   
   
   
 
   

   
   
 
   
   
   
   
 
   

   
filtering="true" />


   
   destdir="${tomcat.build}/webapps/examples/WEB-INF/classes"

debug="${compile.debug}" deprecation="${compile.deprecation}"
optimize="${compile.optimize}"
 classpath="${tomcat.classes}"
excludes="**/CVS/**,**/.svn/**">
   

   destdir="${tomcat.build}/webapps/examples/jsp/plugin/applet"

debug="${compile.debug}" deprecation="${compile.deprecation}"
optimize="${compile.optimize}"
 classpath="$tomcat.lcasses}"
excludes="**/CVS/**,**/.svn/**">
   



   
 
   
 
 
   
   
   
 
 
   
 
   

   
 
   
 
 
   
   
   
 
   

   
 
   
   
   
   
 
   

   
 
   
 
   

   
 
   
 
   

   
 
   
 
   

   
 
   
 
   

   
 
   
   
   
   
   
   
   
   
   
   
   
 
   

   

 

 
	 
	 

 

 
   
   
 

 
 
   
   
 
   
 

 
   
   
   
 

 
   
   
 

 
   
   
   
   
   
   
 

 
   
   
   
   
   
 

 
   
   
   
 

 

   
 
 
 
   

   
 
 
 
   

   
 
 
 
   

   
 
 
   

   

   
   
 
 
 
   
   
   
 
   

   
 
 
 
   

 

 
   
   
 
   
   
 
 
   
   
 
   

   
 
   
   
 
   

   
   
 
   
   
   
 
   
   
 
   
   
 
   
 

Re: Building With OpenJDK 1.7.0

2008-10-19 Thread Ole Ersoy
Wow - the fix looks promising.  


Thanks,
- Ole



Filip Hanik - Dev Lists wrote:
yes, that is a known issue due to commons-dbcp uses a delegate pattern 
to implement the java.sql.Connection interface.


a proposed solution for later version of tomcat has been put into bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038

for now, you would have to comment out the tomcat-dbcp build out of the 
build script


Filip

Ole Ersoy wrote:

Hi,

I attempted to build Tomcat 6.0.18 with OpenJDK.  I get all sorts of 
error messages (Pasted Below).  Just wondering whether OpenJDK is not 
supported, or whether there is a simple workaround to this (Besides 
not using OpenJDK :-) ).  I checked on the users list and was told 
that Tomcat only builds with JDK 1.5, but the documentation says 1.5.x 
and above...


Thoughts?

Thanks,
- Ole

BUILD ATTEMPT:

build-tomcat-dbcp:
   [copy] Copying 63 files to /usr/share/java/tomcat6-deps/dbcp
   [move] Moving 63 files to 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp
  [javac] Compiling 63 source files to 
/usr/share/java/tomcat6-deps/dbcp/classes
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/BasicDataSource.java:44: 
org.apache.tomcat.dbcp.dbcp.BasicDataSource is not abstract and does 
not override abstract method isWrapperFor(java.lang.Class) in 
java.sql.Wrapper

  [javac] public class BasicDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:46: 
org.apache.tomcat.dbcp.dbcp.DelegatingStatement is not abstract and 
does not override abstract method isPoolable() in java.sql.Statement
  [javac] public class DelegatingStatement extends AbandonedTrace 
implements Statement {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingStatement.java:131: 
isClosed() in org.apache.tomcat.dbcp.dbcp.DelegatingStatement cannot 
implement isClosed() in java.sql.Statement; attempting to assign 
weaker access privileges; was public

  [javac] protected boolean isClosed() {
  [javac]   ^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingPreparedStatement.java:50: 
org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement is not 
abstract and does not override abstract method 
setNClob(int,java.io.Reader) in java.sql.PreparedStatement
  [javac] public class DelegatingPreparedStatement extends 
DelegatingStatement

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingCallableStatement.java:53: 
org.apache.tomcat.dbcp.dbcp.DelegatingCallableStatement is not 
abstract and does not override abstract method 
setNClob(java.lang.String,java.io.Reader) in java.sql.CallableStatement
  [javac] public class DelegatingCallableStatement extends 
DelegatingPreparedStatement

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingConnection.java:51: 
org.apache.tomcat.dbcp.dbcp.DelegatingConnection is not abstract and 
does not override abstract method 
createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection

  [javac] public class DelegatingConnection extends AbandonedTrace
  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/DelegatingResultSet.java:55: 
org.apache.tomcat.dbcp.dbcp.DelegatingResultSet is not abstract and 
does not override abstract method 
updateNClob(java.lang.String,java.io.Reader) in java.sql.ResultSet
  [javac] public class DelegatingResultSet extends AbandonedTrace 
implements ResultSet {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolablePreparedStatement.java:41: 
org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement is not abstract 
and does not override abstract method setNClob(int,java.io.Reader) in 
java.sql.PreparedStatement
  [javac] public class PoolablePreparedStatement extends 
DelegatingPreparedStatement implements PreparedStatement {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingConnection.java:42: 
org.apache.tomcat.dbcp.dbcp.PoolingConnection is not abstract and does 
not override abstract method 
createStruct(java.lang.String,java.lang.Object[]) in java.sql.Connection
  [javac] public class PoolingConnection extends DelegatingConnection 
implements Connection, KeyedPoolableObjectFactory {

  [javac]^
  [javac] 
/usr/share/java/tomcat6-deps/dbcp/src/java/org/apache/tomcat/dbcp/dbcp/PoolingDataSource.java:45: 
org.apache.tomcat.dbcp.dbcp.PoolingDataSource is not abstract and does 
not override abstract method isWrapperFor(java.lang.Class) in 
java.sql.Wrapper

  [javac] public class PoolingDataSource implements DataSource {
  [javac]^
  [javac] 
/usr/share/java/tomcat6-

DO NOT REPLY [Bug 46038] Tomcat JDBC Connection Pool contribution

2008-10-19 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46038


ole ersoy <[EMAIL PROTECTED]> changed:

   What|Removed |Added

 CC||[EMAIL PROTECTED]




-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r706088 - /tomcat/tc6.0.x/trunk/STATUS.txt

2008-10-19 Thread markt
Author: markt
Date: Sun Oct 19 16:59:13 2008
New Revision: 706088

URL: http://svn.apache.org/viewvc?rev=706088&view=rev
Log:
Propose some fixes

Modified:
tomcat/tc6.0.x/trunk/STATUS.txt

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=706088&r1=706087&r2=706088&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Sun Oct 19 16:59:13 2008
@@ -264,4 +264,15 @@
 * Derefence socket when the request is complete
   http://svn.apache.org/viewvc?rev=702676&view=rev
   +1: fhanik
-  
\ No newline at end of file
+  -1: 
+
+* Port remaining EL changes. This is all the remaining EL related
+  patches from trunk
+  http://people.apache.org/~markt/patches/2008-10-19-el-tck-various.patch
+  +1: markt
+  -1: 
+
+* Backport NCDFE fix from trunk (TCK failures without it)
+  http://svn.apache.org/viewvc?rev=640888&view=rev 
+  +1: markt
+  -1: 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Tomcat 3 [2008/10/19]

2008-10-19 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=Critical  REG=Regression  MAJ=Major   |
| |   |   MIN=Minor   NOR=NormalENH=Enhancement TRV=Trivial |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|  412|Ver|Nor|2001-01-08|JspC on Windows fails to handle includes in subdir|
| 2350|Ver|Nor|2001-06-27|ServletConfig.getInitParameter() requires url-patt|
| 6488|Ver|Maj|2002-02-15|Error: 304. Apparent bug in default ErrorHandler c|
| 9737|Ver|Nor|2002-06-10|ArrayIndexOutOfBoundsException when sending just p|
|44911|Ass|Nor|2008-04-30|Test again from Chirag|
+-+---+---+--+--+
| Total5 bugs   |
+---+

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Watchdog [2008/10/19]

2008-10-19 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=Critical  REG=Regression  MAJ=Major   |
| |   |   MIN=Minor   NOR=NormalENH=Enhancement TRV=Trivial |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|  278|Unc|Nor|2000-12-04|Bug in GetParameterValuesTestServlet.java file Bug|
|  279|Unc|Nor|2000-12-04|Logical Error in GetParameterValuesTestServlet Bug|
|  469|Unc|Nor|2001-01-17|in example-taglib.tld "urn" should be "uri" BugRat|
|  470|Unc|Nor|2001-01-17|FAIL positiveForward.jsp and positiveInclude.jsp B|
| 9634|New|Enh|2002-06-05|No tests exist for ServletContext.getResourcePaths|
|10703|New|Enh|2002-07-11|Need to test getRequestURI after RequestDispatcher|
|11336|New|Enh|2002-07-31|Test wrapped path methods with RD.foward()|
|11663|New|Maj|2002-08-13|JSP precompile tests rely on Jasper specific behav|
|11664|New|Maj|2002-08-13|A sweep is needed of all Watchdog 4.0 tag librarie|
|11665|New|Maj|2002-08-13|ServletToJSPErrorPageTest and ServletToServletErro|
|11666|New|Maj|2002-08-13|SetBufferSize_1TestServlet is invalid.|
|14004|New|Maj|2002-10-28|Incorrent behaviour of all attribute-related lifec|
|15504|New|Nor|2002-12-18|JSP positiveGetValues test relies on order preserv|
|24649|New|Nor|2003-11-12|getRemoteHost fails when agent has uppercase chara|
|29398|New|Nor|2004-06-04|Update site and note current status   |
+-+---+---+--+--+
| Total   15 bugs   |
+---+

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Bug report for Tomcat 4 [2008/10/19]

2008-10-19 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=Critical  REG=Regression  MAJ=Major   |
| |   |   MIN=Minor   NOR=NormalENH=Enhancement TRV=Trivial |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
| 3839|Opn|Enh|2001-09-26|Problem bookmarking login page|
| 4227|Opn|Enh|2001-10-17|Invalid CGI path  |
| 5329|New|Enh|2001-12-08|NT Service exits startup before Tomcat is finished|
| 5795|New|Enh|2002-01-10|Catalina Shutdown relies on localhost causing prob|
| 5829|New|Enh|2002-01-13|StandardManager needs to cope with sessions throwi|
| 5985|New|Enh|2002-01-23|Tomcat should perform a more restrictive validatio|
| 6600|Opn|Enh|2002-02-20|enodeURL adds 'jsession' when 'isRequestedSessionI|
| 6614|New|Enh|2002-02-21|Have Bootstrap and StandardClassLoader use the sam|
| 6671|New|Enh|2002-02-25|Simple custom tag example uses old declaration sty|
| 7043|New|Enh|2002-03-12|database user and password for JDBC Based Store   |
| 7374|New|Enh|2002-03-22|Apache Tomcat/4.0.1 message on standard output|
| 7676|New|Enh|2002-04-02|Allow name property to use match experssions in  without className in server.xml produces N|
|11129|New|Enh|2002-07-24|New valve for putting the sessionIDs in the reques|
|11248|New|Enh|2002-07-29|DefaultServlet doesn't send expires header|
|11754|Opn|Enh|2002-08-15|Synchronous shutdown script - shutdown.sh should w|
|12069|New|Enh|2002-08-27|Creation of more HttpSession objects for one previ|
|12428|Opn|Enh|2002-09-09|request.getUserPrincipal(): Misinterpretation of s|
|12658|New|Enh|2002-09-15|a proxy host and port at the  element level |
|12766|New|Enh|2002-09-18|Tomcat should use tld files in /WEB-INF/ over vers|
|13309|Opn|Enh|2002-10-04|Catalina calls System.exit()  |
|13634|New|Enh|2002-10-15|Allowing system properties to be substituted in co|
|13689|Opn|Enh|2002-10-16|Classloader paths for 'Common' classes and librari|
|13731|New|Enh|2002-10-17|Final request, response, session and other variabl|
|13941|New|Enh|2002-10-24|reload is VERY slow   |
|13965|New|Enh|2002-10-25|Catalina.sh correction request for Tru64 Unix |
|14097|New|Enh|2002-10-30|hardcoded registry value for vm lets tomcat servic|
|14416|New|Enh|2002-11-10|blank tag name in TLD cause NullPointerException  |
|14635|New|Enh|2002-11-18|Should be possible not to have -MM-DD in log f|
|14766|New|Enh|2002-11-22|Redirect Vavle|
|14993|New|Enh|2002-12-02|Possible obselete synchronized declaration|
|15115|New|Enh|2002-12-05|correct docs... XML parser *cannot* be overridden |
|15417|Opn|Enh|2002-12-16|Add port for forced compilation of JSP pages  |
|15688|New|Enh|2002-12-27|full-qualified names instead of imports   |
|15941|New|Enh|2003-01-10|Expose rootCause exceptions at deeper levels  |
|16294|New|Enh|2003-01-21|Configurable URL Decoding.|
|16357|New|Enh|2003-01-23|"connection timeout reached"  |
|16531|New|Enh|2003-01-29|Updating already deployed ".war" files in a single|
|16579|New|Enh|2003-01-30|documentation page layout/style breaks wrapping to|
|16596|New|Enh|2003-01-30|option for disabling log rotation |
|17070|New|Enh|2003-02-14|The Catalina Ant tasks do not allow for 'reusable'|
|17146|New|Enh|2003-02-18|Simplify build.xml using 

Bug report for Tomcat 5 [2008/10/19]

2008-10-19 Thread bugzilla
+---+
| Bugzilla Bug ID   |
| +-+
| | Status: UNC=Unconfirmed NEW=New ASS=Assigned|
| | OPN=ReopenedVER=Verified(Skipped Closed/Resolved)   |
| |   +-+
| |   | Severity: BLK=Blocker CRI=Critical  REG=Regression  MAJ=Major   |
| |   |   MIN=Minor   NOR=NormalENH=Enhancement TRV=Trivial |
| |   |   +-+
| |   |   | Date Posted |
| |   |   |  +--+
| |   |   |  | Description  |
| |   |   |  |  |
|27122|Opn|Enh|2004-02-20|IE plugins cannot access components through Tomcat|
|28039|Opn|Enh|2004-03-30|Cluster Support for SingleSignOn  |
|29160|Ver|Enh|2004-05-23|precompile problem: _jspx_meth_* (javax.servlet.js|
|29494|Inf|Enh|2004-06-10|No way to set PATH when running as a service on Wi|
|30241|Ver|Enh|2004-07-21|Enhance build script to use branch argument when c|
|33262|Inf|Enh|2005-01-27|Service Manager autostart should check for adminis|
|33453|Opn|Enh|2005-02-08|Jasper should recompile JSP files whose datestamps|
|33650|Inf|Enh|2005-02-19|Jasper performance for multiple files processing  |
|33671|Opn|Enh|2005-02-21|Manual Windows service installation with custom na|
|34801|New|Enh|2005-05-08|PATCH: CGIServlet does not terminate child after a|
|34805|Ass|Enh|2005-05-08|warn about invalid security constraint url pattern|
|34868|Ass|Enh|2005-05-11|allow to register a trust store for a session that|
|35054|Inf|Enh|2005-05-25|warn if appBase is not existing as a File or direc|
|36133|Inf|Enh|2005-08-10|Support JSS SSL implementation|
|36362|New|Enh|2005-08-25|missing check for Java reserved keywords in tag fi|
|36569|Inf|Enh|2005-09-09|Redirects produce illegal URL's   |
|36837|Inf|Enh|2005-09-28|Looking for ProxyHandler implementation of Http re|
|36922|Inf|Enh|2005-10-04|setup.sh file mis-advertised and missing  |
|36923|New|Nor|2005-10-05|Deactivated EL expressions are not parsed for jsp |
|37018|Ass|Enh|2005-10-11|Document how to use tomcat-SSL with a pkcs11 token|
|37084|Opn|Reg|2005-10-14|JspC from ant fails on JSPs that use custom taglib|
|37334|Inf|Enh|2005-11-02|Realm digest property not aligned with the adminis|
|37449|Opn|Enh|2005-11-10|Two UserDatabaseRealm break manager user  |
|37458|Opn|Nor|2005-11-10|Datarace on org.apache.catalina.loader.WebappClass|
|37485|Inf|Enh|2005-11-14|I'd like to run init SQL after JDBC Connection cre|
|37498|Inf|Nor|2005-11-14|[PATCH] NPE in org.apache.catalina.core.ContainerB|
|37515|Inf|Nor|2005-11-15|smap not generated by JspC when used from Ant for |
|37627|Opn|Nor|2005-11-24|Slow and incomplete dynamic content generation aft|
|37785|Inf|Nor|2005-12-05|Changing startup type via Tomcat Monitor does not |
|37794|Opn|Nor|2005-12-05|getParameter() fails on POST with transfer-encodin|
|37797|Inf|Maj|2005-12-05|Configure Tomcat utility truncates classpath to 96|
|37847|Ass|Enh|2005-12-09|Allow User To Optionally Specify Catalina Output F|
|37869|Opn|Nor|2005-12-12|Cannot obtain client certificate with SSL / client|
|37918|Inf|Nor|2005-12-15|EL cannot find valid getter from object when using|
|37984|New|Nor|2005-12-21|JNDIRealm.java not able to handle MD5 password|
|38046|Ass|Reg|2005-12-27|apache-tomcat-5.5.14-deployer doesn't work (Illega|
|38197|Opn|Maj|2006-01-09|taglib pool bug when tag is used with jsp:attribut|
|38216|Inf|Enh|2006-01-10|Extend Jmxproxy to allow call of MBean Operations |
|38217|Ver|Enh|2006-01-10|mention that private key password and keystore pas|
|38268|Inf|Enh|2006-01-13|User friendly: Need submit button on adding/deleti|
|38352|Inf|Nor|2006-01-22|Additional Entries for Default catalina.policy fil|
|38360|Inf|Enh|2006-01-24|Domain for session cookies|
|38367|Inf|Nor|2006-01-24|Executing any Catalina Ant task results in an exce|
|38427|Inf|Nor|2006-01-27|ServletContextListener Notified Multiple Times Whe|
|38483|New|Nor|2006-02-01|access log valve uses simpledateformat in tread-un|
|38484|New|Min|2006-02-01|webapps Admin: Invalid path /login was requested  |
|38516|Inf|Nor|2006-02-05|Configuration Manager loses "Log On" settings |
|38546|Inf|Enh|2006-02-07|Google bot sends invalid If-Modifed-Since Header, |
|38553|Inf|Nor|2006-02-07|Wrong HTTP code for failed CLIENT-CERT authenticat|
|38570|Inf|Nor|2006-02-08|if docBase path contains "webapps", a backslash is|
|38577|Inf|Enh|2006-02-08|Enhance logging of security failures  |
|38630|