Hi Jim, I am running Dspace with Oracle 9.2.0.7 and data type is "NUMBER"
(SiZE_BYTES). But the problem also is present with upload other documents.
Atte
Rodrigo Castro
Jefe de Tecnología
Alerta al Conocimiento S.A.
Fono: 233-7908
-----Mensaje original-----
De:
dspace-te...@lists.sourceforge.net
[mailto:
dspace-te...@lists.sourceforge.net] En nombre de
dspace-te...@lists.sourceforge.net
Enviado el: Jueves, 15 de Febrero de 2007 15:21
Para:
dspac...@lists.sourceforge.net
Asunto: DSpace-tech Digest, Vol 10, Issue 37
Send DSpace-tech mailing list submissions to
dspac...@lists.sourceforge.net
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.sourceforge.net/lists/listinfo/dspace-tech
or, via email, send a message with subject or body 'help' to
dspace-te...@lists.sourceforge.net
You can reach the person managing the list at
dspace-t...@lists.sourceforge.net
When replying, please edit your Subject line so it is more specific
than "Re: Contents of DSpace-tech digest..."
Today's Topics:
1. Re: Help: Dspace 1.4.1; Internal System Error (Jim Downing)
2. Re: column a.oid does not exist (Jim Downing)
3. Re: Compatibility bug with Oracle 10g (Graham Triggs)
4. Re: How to configure Postfix...?? (James Rutherford)
5. Re: Weird Import Error (George Kozak)
6. Dspace Config file question (Jeffrey Trimble)
7. Re: Compatibility bug with Oracle 10g (Graham Triggs)
8. Item Submission error. (Lakshmi Balasubramanyam)
----------------------------------------------------------------------
Message: 1
Date: Thu, 15 Feb 2007 09:03:24 +0000
From: Jim Downing <
oj...@cam.ac.uk>
Subject: Re: [Dspace-tech] Help: Dspace 1.4.1; Internal System Error
To:
dspac...@lists.sourceforge.net
Cc: Rodrigo Castro Artigas <
rca...@alerta.cl>
Message-ID: <
45D421DC...@cam.ac.uk>
Content-Type: text/plain; charset=UTF-8; format=flowed
------------------------------
Message: 2
Date: Thu, 15 Feb 2007 09:06:56 +0000
From: Jim Downing <
oj...@cam.ac.uk>
Subject: Re: [Dspace-tech] column a.oid does not exist
To: Fatih Oguz <
fo...@valdosta.edu>
Cc:
dspac...@lists.sourceforge.net
Message-ID: <
45D422B0...@cam.ac.uk>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Hi Fatih,
Fatih Oguz wrote:
> We have our dspace installation on a sun machine:
> SunOS varro 5.9 Generic_118558-28 sun4u sparc SUNW,UltraAX-i2
>
>
> Any suggestions?
>
More of a guess - it looks like it could be a problem in the driver; is
your postgres driver is the correct version for the database?
> Exception occurred:java.sql.SQLException: ERROR: column a.oid does not
> exist
>
> java.sql.SQLException: ERROR: column a.oid does not exist
>
> at org.postgresql.Connection.ExecSQL(Connection.java:533)
> at org.postgresql.Connection.ExecSQL(Connection.java:400)
> at
>
org.postgresql.jdbc2.DatabaseMetaData.getColumns(DatabaseMetaData.java:1894)
> at
Best regards,
jim
------------------------------
Message: 3
Date: Thu, 15 Feb 2007 12:45:33 +0000
From: "Graham Triggs" <
gra...@biomedcentral.com>
Subject: Re: [Dspace-tech] Compatibility bug with Oracle 10g
To: "dspace-tech" <
dspac...@lists.sourceforge.net>
Message-ID: <1171543533.6212.13.camel@L562>
Content-Type: text/plain; charset="utf-8"
On Tue, 2007-02-13 at 09:52 +0000, Jim Downing wrote:
> Jos? A. Rubio wrote:
> > java.lang.IllegalArgumentException: Value for SIZE_BYTES is not an
> > integer
> This has come up before: -
>
>
https://sourceforge.net/tracker/?func=detail&atid=119984&aid=1460754&group_i
d=19984
>
You could try the patch below.
It's *really* hacky, and does two things:
1) for Integer / Decimal jdbc types, when using Oracle, it checks to see
if the column is long, and uses long values if it is, otherwise, it uses
ints.
2) in getLongColumn(), if the returned object is an Integer, then it
accepts it as valid and returns a long.
Like I say, it's a bit messy, but it gets around the immediate problem
(as tested locally in a file submission). But could do with a bit more
thought and review.
G
oracle-hack:
### Eclipse Workspace Patch 1.0
#P dspace
Index: src/org/dspace/storage/rdbms/DatabaseManager.java
===================================================================
RCS
file:
/cvsroot/dspace/dspace/src/org/dspace/storage/rdbms/DatabaseManager.java,v
retrieving revision 1.40
diff -u -r1.40 DatabaseManager.java
--- src/org/dspace/storage/rdbms/DatabaseManager.java 5 Jul 2006
16:17:16 -0000 1.40
+++ src/org/dspace/storage/rdbms/DatabaseManager.java 15 Feb 2007
12:40:54 -0000
@@ -1415,7 +1415,15 @@
else if ((jdbctype == Types.INTEGER)
|| (jdbctype == Types.DECIMAL))
{
- statement.setInt(count, row.getIntColumn(column));
+ if
("oracle".equals(ConfigurationManager.getProperty("
db.name")))
+ {
+ if (row.isLongColumn(column))
+ statement.setLong(count,
row.getLongColumn(column));
+ else
+ statement.setInt(count,
row.getIntColumn(column));
+ }
+ else
+ statement.setInt(count,
row.getIntColumn(column));
continue;
}
Index: src/org/dspace/storage/rdbms/TableRow.java
===================================================================
RCS
file: /cvsroot/dspace/dspace/src/org/dspace/storage/rdbms/TableRow.java,v
retrieving revision 1.11
diff -u -r1.11 TableRow.java
--- src/org/dspace/storage/rdbms/TableRow.java 16 Nov 2006 23:40:47
-0000 1.11
+++ src/org/dspace/storage/rdbms/TableRow.java 15 Feb 2007 12:40:54
-0000
@@ -123,6 +123,16 @@
return data.get(canonicalize(column)) == NULL_OBJECT;
}
+
+ public boolean isLongColumn(String column)
+ {
+ String name = canonicalize(column);
+ Object value = data.get(name);
+ if (value instanceof Long)
+ return true;
+
+ return false;
+ }
/**
* Return the integer value of column.
@@ -198,9 +208,15 @@
+ " not present");
}
+ if ((value instanceof Integer))
+ {
+ return ((Integer) value).longValue();
+ }
+
if (!(value instanceof Long))
{
- throw new IllegalArgumentException("Value is not an long");
+ throw new IllegalArgumentException("Value for " + column
+ + " is not a long");
}
return ((Long) value).longValue();
This e-mail is confidential and should not be used by anyone who is not the
original intended recipient. BioMed Central Limited does not accept
liability for any statements made which are clearly the sender's own and not
expressly made on behalf of BioMed Central Limited. No contracts may be
concluded on behalf of BioMed Central Limited by means of e-mail
communication. BioMed Central Limited Registered in England and Wales with
registered number 3680030 Registered Office Middlesex House, 34-42 Cleveland
Street, London W1T 4LB
------------------------------
Message: 4
Date: Thu, 15 Feb 2007 13:01:25 +0000
From: "James Rutherford" <
j...@oneoverzero.com>
Subject: Re: [Dspace-tech] How to configure Postfix...??
To: "Sahil Dave" <
sahil....@gmail.com>, "Dspace Tech"
<
dspac...@lists.sourceforge.net>
Message-ID: <
d9b2b70702150501k3f9...@mail.gmail.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
On 14/02/07, Sahil Dave <
sahil....@gmail.com> wrote:
> yes i am running Mandriva 2007.. but i need to deploy Dspace on RHEL 4 -
ES
> in my Library...
> what all changes do i need to make to the postfix & DSpace config.
> files....??
RHEL4 will probably have sendmail setup and configured already. You
can check to see if it is by running (as root) lsof -i tcp:25
you should see something like the following if it is running:
[root@localhost ~]# lsof -i tcp:25
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sendmail 2995 root 3u IPv4 6365 TCP
localhost.localdomain:smtp (LISTEN)
If this is the case, you just need to configure the mail server in
your dspace.cfg to be localhost, and add the username and password as
required for the sendmail configuration. Note that if you're running
sendmail purely for your DSpace repository, you should configure your
firewall to block external connections to port 25 to avoid being used
as a relay.
There is nothing special about DSpace SMTP requirements, so for
whichever software you use, you should be able to find ample
documentation and sample configuration files. I'm afraid I don't
really know much about postfix, but I do know that it is a
well-documented project, so you should have no problems using it if
you really want to.
Jim.
------------------------------
Message: 5
Date: Thu, 15 Feb 2007 09:43:15 -0500
From: George Kozak <
gs...@cornell.edu>
Subject: Re: [Dspace-tech] Weird Import Error
To:
dspac...@lists.sourceforge.net
Message-ID:
<
6.2.1.2.2.200702...@postoffice8.mail.cornell.edu>
Content-Type: text/plain; charset="us-ascii"; format=flowed
Hi...
I figured out my import error "java.lang.NullPointerException". If anyone
is interested, it was caused by a null XML field in my dublin_core.xml. I
generated the dublin_core.xml with a script using a template and somehow a
field with nothing in it was created. As luck would have it, it was in the
middle of a lot of XML so I didn't notice it at first.
George Kozak
Coordinator
Web Development and Management
Digital Media Group
504 Olin Library
Cornell University
Ithaca, NY 14853
607-255-8924
gs...@cornell.edu
------------------------------
Message: 6
Date: Thu, 15 Feb 2007 11:17:13 -0500
From: Jeffrey Trimble <
jtri...@cc.ysu.edu>
Subject: [Dspace-tech] Dspace Config file question
To:
dspac...@lists.sourceforge.net
Message-ID: <
E1HHjII-...@unix1.cc.ysu.edu>
Content-Type: text/plain; charset="us-ascii"
I'm above to upgrade from 1.3.2 to 1.4.1 and as I am working through
my Dspace Config
file, I have inconsistency that I need to be "enlightened" about.
My 1.3.2 (test server) has the following in the config file:
##### Web UI Settings ######
# The site authenticator - must implement
org.dspace.app.webui.SiteAuthenticator
webui.site.authenticator = org.dspace.app.webui.SimpleAuthenticator
# Certificate authority
webui.cert.ca = /dspace/etc/certificate-ca.pem
# If a user presents a valid Web certificate, but does not have an e-person
# record, should they automatically be given a new e-person record?
webui.cert.autoregister = true
But I don't see it in the 1.4.1 version. Is this now obsolete since
there is the new
LDAP configurator?
TIA,
Jeffrey A. Trimble
Systems Librarian
Youngstown State University
Youngstown, OH
jtri...@cc.ysu.edu
(330) 941-2483
http://digital.maag.ysu.edu
http://www.maag.ysu.edu
http://jupiter.ysu.edu
-------------- next part --------------
An HTML attachment was scrubbed...
------------------------------
Message: 7
Date: Thu, 15 Feb 2007 16:45:24 +0000
From: "Graham Triggs" <
gra...@biomedcentral.com>
Subject: Re: [Dspace-tech] Compatibility bug with Oracle 10g
To: "dspace-tech" <
dspac...@lists.sourceforge.net>
Message-ID: <1171557924.6212.34.camel@L562>
Content-Type: text/plain; charset="utf-8"
On Thu, 2007-02-15 at 12:45 +0000, Graham Triggs wrote:
> On Tue, 2007-02-13 at 09:52 +0000, Jim Downing wrote:
> > Jos? A. Rubio wrote:
> > > java.lang.IllegalArgumentException: Value for SIZE_BYTES is not an
> > > integer
> > This has come up before: -
> >
> >
https://sourceforge.net/tracker/?func=detail&atid=119984&aid=1460754&group_i
d=19984
> >
>
>
> You could try the patch below.
I've now given this some more thought, and I believe the only workable
solution is to always pass integer values IN to Oracle as long, and on
retrieving them, assume them to always be long, then test them and if
they are capable of being stored in an int, populate TableRow with an
int.
This should allow all the other code to work - an int goes in, an int
ought to be retrievable (via getIntColumn). Anything that expects to get
long, can get a long, regardless of whether it is / is capable of being
an int. Only if something explicitly puts something that can't be
represented as a long into the database, and then tries to
getIntColumn() on retrieval, would an error arise.
If you are using Postgres, then this patch doesn't change any behaviour
(apart from TableRow allowing getLongValue to return the contents of an
integer).
I have submitted a patch implementing this as (#1660752):
http://sourceforge.net/tracker/index.php?func=detail&aid=1660752&group_id=19
984&atid=319984
Changes:
DatabaseManager.java:
execute()
- add Types.NUMERIC test to the Integer if condition
- when Oracle is configured, it *always* passes in longs for
integer/numeric types. Behaviour for Postgres is unchanged (uses an
int).
process()
- when Oracle is configured, for numeric types, it gets a long from the
resultset. If the long can be cast to an int with no loss of data, then
it
uses an int for populating the TableRow - if not, it uses the long.
Behaviour for Postgres is unchanged (uses an int).
TableRow.java:
getLongColumn()
- if the column contains an Integer, allow it to be returned as a long
(there is no loss of data).
The table row change is required, as for Oracle we are always populating
the TableRow with int values if we can represent a numeric as such
without
loss. We have to do that to allow for code that is expecting an int,
however where code is expecting to retrieve long column, having an int
value would have cause it to fail.
This e-mail is confidential and should not be used by anyone who is not the
original intended recipient. BioMed Central Limited does not accept
liability for any statements made which are clearly the sender's own and not
expressly made on behalf of BioMed Central Limited. No contracts may be
concluded on behalf of BioMed Central Limited by means of e-mail
communication. BioMed Central Limited Registered in England and Wales with
registered number 3680030 Registered Office Middlesex House, 34-42 Cleveland
Street, London W1T 4LB
------------------------------
Message: 8
Date: Thu, 15 Feb 2007 12:20:45 -0600
From: "Lakshmi Balasubramanyam" <
LBALASUB...@kumc.edu>
Subject: [Dspace-tech] Item Submission error.
To:
dspac...@lists.sourceforge.net,
l...@mit.edu, "Jacob Cameron"
<
jacob....@uleth.ca>
Message-ID: <
45D45014.8...@kumc.edu>
Content-Type: TEXT/plain; charset="US-ASCII"
We have the Dspace 1.4.1 version installed on our unix server that is
running against a postgres server. I am getting an Internal server error
when I submit an item after I click on "I grant the Licence" button in
the process. The error message says
java.io.IOException: Lock obtain timed out:
Lock@/websys/jakarta-tomcat-5.0.28/temp/lucene-aedcccbd80b1f19e22ef7b78d1bec
400-write.lock
at org.apache.lucene.store.Lock.obtain(Lock.java:56)
at
org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:254)
at
org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:204)
at org.dspace.search.DSIndexer.openIndex(DSIndexer.java:286)
at org.dspace.search.DSIndexer.indexContent(DSIndexer.java:92)
at
org.dspace.content.InstallItem.installItem(InstallItem.java:149)
at
org.dspace.content.InstallItem.installItem(InstallItem.java:73)
at
org.dspace.workflow.WorkflowManager.archive(WorkflowManager.java:652)
at
org.dspace.workflow.WorkflowManager.doState(WorkflowManager.java:606)
at
org.dspace.workflow.WorkflowManager.doState(WorkflowManager.java:582)
at
org.dspace.workflow.WorkflowManager.doState(WorkflowManager.java:546)
at
org.dspace.workflow.WorkflowManager.doState(WorkflowManager.java:506)
at
org.dspace.workflow.WorkflowManager.start(WorkflowManager.java:203)
at
org.dspace.app.webui.servlet.SubmitServlet.processLicense(SubmitServlet.java
:1618)
at
org.dspace.app.webui.servlet.SubmitServlet.doDSPost(SubmitServlet.java:424)
at
org.dspace.app.webui.servlet.DSpaceServlet.processRequest(DSpaceServlet.java
:147)
at
org.dspace.app.webui.servlet.DSpaceServlet.doPost(DSpaceServlet.java:105)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
Can anyone tell me what's causing this. I have bounced the server a
couple of times, logged out and logged in many times but still keep
getting this error. Any ideas?
Thanks!
- Lakshmi
------------------------------
------------------------------
End of DSpace-tech Digest, Vol 10, Issue 37
*******************************************