Hi Martin,
thank you for your help.
after you saied that i install GT-4.0 , I installed GT-4.0.3 . but i
have a prblem with it.
after i run ' globus-start-container ' i see this error that RFT
cannot be work correctly :
-----------------
[EMAIL PROTECTED]:~> globus-start-container
2008-08-16 17:01:29,382 INFO exec.RunQueue [main,initialize:68]
Starting state machine with 18 run queues.
2008-08-16 17:01:32,038 ERROR service.ReliableFileTransferImpl
[main,<init>:68] Unable to setup database driver with
pooling.Connection refused. Check that the hostname and port are
correct and that the postmaster is accepting TCP/IP connections.
2008-08-16 17:01:32,822 WARN service.ReliableFileTransferHome
[main,initialize:97] All RFT requests will fail and all GRAM jobs
that require file staging will fail.Connection refused. Check that
the hostname and port are correct and that the postmaster is
accepting TCP/IP connections.
2008-08-16 17:02:42,883 INFO impl.DefaultIndexService
[ServiceThread-11,processConfigFile:107] Reading default
registration configuration from file: /usr/local/globus-4.0.3/etc/
globus_wsrf_mds_index/hierarchy.xml
Starting SOAP server at: https://192.168.134.101:8443/wsrf/services/
With the following services:
[1]: https://192.168.134.101:8443/wsrf/services/AdminService
[2]: https://192.168.134.101:8443/wsrf/services/
AuthzCalloutTestService
[3]: https://192.168.134.101:8443/wsrf/services/CASService
....
-----------------
I use the installation guide that available in "Introduction To
Grid Computing.pdf ".
i set the database postgresql , but i see the above error and i
cannot use RFT and GRAM.
do any one help me ?
Thanks.
Omid.
On Fri, Aug 15, 2008 at 10:14 AM, Martin Feller <[EMAIL PROTECTED]>
wrote:
Omid,
i can't give you a much better advice i think. The examples in the
book
work with 4.0, but not with 4.2.
You can of course figure out the new package structure in 4.2
yourself.
The following doc might help with this:
http://dev.globus.org/wiki/Java_WS_Core/Final_WSRF_Migration_Guide
But if you are under time-pressure, it's maybe better to use the
existing
c-client if that is possible, instead of writing a client on your own.
Martin
omid boroumand wrote:
do you can give me a another suggestion instead of install GT 4.0.8 ?
because i don't have enough time to install GT 4.0.8. <http://4.0.8.>
Thanks.
Omid.
On Thu, Aug 14, 2008 at 11:00 AM, Martin Feller <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]
>> wrote:
Ah, you have GT 4.2.0 installed, right?
If so, then the imports from the gt4 book don't fit, because those
refer to GT 4.0.
A few things changed in 4.2, including Java package structures.
The best way for programming with GT and the gt4 book is probably
to
install GT 4.0.8 and load the names of the archives into your
classpath from
the GT 4.0.8 install (source ...globus-devel-env.sh) .
Then all package names should be right.
Martin
omid boroumand wrote:
Hi,
I accoplish what you said in your reply. but after this ,
ever i see this error :
---------------
[EMAIL PROTECTED]:/usr/local/GT4-examples/gt4book-examples>
source $GLOBUS_LOCATION/etc/globus-devel-env.sh
[EMAIL PROTECTED]:/usr/local/GT4-examples/gt4book-examples>
javac
SubmitJob.java
SubmitJob.java:14: package org.apache.axis.message.addressing
does not exist
import
org.apache.axis.message.addressing.EndpointReferenceType;
^
SubmitJob.java:15: package org.apache.axis.message.addressing
does not exist
import
org.apache.axis.message.addressing.ReferencePropertiesType;
^
SubmitJob.java:16: package org.apache.axis.message.addressing
does not exist
import org.apache.axis.message.addressing.Address;
^
SubmitJob.java:24: cannot find symbol
symbol : class Authorization
location: package org.globus.wsrf.impl.security.authorization
import
org.globus.wsrf.impl.security.authorization.Authorization;
^
SubmitJob.java:51: cannot find symbol
symbol : class EndpointReferenceType
location: class SubmitJob
EndpointReferenceType endpoint = new
EndpointReferenceType();
^
SubmitJob.java:51: cannot find symbol
symbol : class EndpointReferenceType
location: class SubmitJob
EndpointReferenceType endpoint = new
EndpointReferenceType();
^
SubmitJob.java:52: cannot find symbol
symbol : class Address
location: class SubmitJob
endpoint.setAddress(new
Address("https://omid:8443/wsrf/services/ManagedJobFactoryService
"));
^
SubmitJob.java:53: cannot find symbol
symbol : class ReferencePropertiesType
location: class SubmitJob
ReferencePropertiesType props = new
ReferencePropertiesType();
^
SubmitJob.java:53: cannot find symbol
symbol : class ReferencePropertiesType
location: class SubmitJob
ReferencePropertiesType props = new
ReferencePropertiesType();
^
SubmitJob.java:65: cannot find symbol
symbol : class Authorization
location: class SubmitJob
Authorization authz = HostAuthorization.getInstance();
^
Note: SubmitJob.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
10 errors
----------------------
my SubmitJob.java contains this :
import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.HelpFormatter;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.OptionBuilder;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.ParseException;
import org.apache.commons.cli.PosixParser;
import org.apache.axis.components.uuid.UUIDGen;
import org.apache.axis.components.uuid.UUIDGenFactory;
import
org.apache.axis.message.addressing.EndpointReferenceType;
import
org.apache.axis.message.addressing.ReferencePropertiesType;
import org.apache.axis.message.addressing.Address;
import org.globus.exec.client.GramJob;
import org.globus.exec.client.GramJobListener;
import org.globus.exec.generated.StateEnumeration;
import org.globus.exec.generated.JobDescriptionType;
import org.globus.exec.generated.FilePairType;
import org.globus.exec.utils.ManagedJobConstants;
import org.globus.wsrf.impl.security.authentication.Constants;
import
org.globus.wsrf.impl.security.authorization.Authorization;
import
org.globus.wsrf.impl.security.authorization.HostAuthorization;
import org.globus.wsrf.impl.SimpleResourceKey;
public class SubmitJob implements GramJobListener
{
private static Object waiter = new Object();
public static void main (String args[])
{
SubmitJob client = new SubmitJob();
System.out.print("submitting job ... ");
try {
client.submitJob();
System.out.println("done");
System.out.println("Waiting for notification
messages ...");
synchronized (waiter) {
waiter.wait();
}
} catch (Exception e) {
e.printStackTrace();
}
} public void submitJob() throws Exception
{
// create factory epr
EndpointReferenceType endpoint = new
EndpointReferenceType();
endpoint.setAddress(new
Address("https://omid:8443/wsrf/services/ManagedJobFactoryService
"));
ReferencePropertiesType props = new
ReferencePropertiesType();
SimpleResourceKey key
= new SimpleResourceKey(
ManagedJobConstants.RESOURCE_KEY_QNAME,
"Fork");
props.add(key.toSOAPElement());
endpoint.setProperties(props);
// job rsl
String rsl =
"<job><executable>/bin/sleep</executable><argument>1</
argument></job>";
// setup security
Authorization authz = HostAuthorization.getInstance();
Integer xmlSecurity = Constants.ENCRYPTION;
boolean batchMode = false;
boolean limitedDelegation = true;
// generate job uuid
UUIDGen uuidgen = UUIDGenFactory.getUUIDGen();
String submissionID = "uuid:" + uuidgen.nextUUID();
GramJob job = new GramJob(rsl);
job.setAuthorization(authz);
job.setMessageProtectionType(xmlSecurity);
job.setDelegationEnabled(true);
job.addListener(this);
job.submit(endpoint,
batchMode,
limitedDelegation,
submissionID);
}
// GramJob calls this method when a job changes its state
// It's part of GramJobListener Interface
public void stateChanged(GramJob job)
{
StateEnumeration jobState = job.getState();
System.out.println(" got state notifiation: job is in
state " + jobState);
try {
//System.out.println("refreshing status: ");
//job.refreshStatus();
// System.out.println("state is: " + job.getState());
} catch (Exception e) {
e.printStackTrace();
}
if (jobState.equals(StateEnumeration.Done)
|| jobState.equals(StateEnumeration.Failed)) {
System.out.print("job finished. destroying job
resource ... ");
try {
job.removeListener(this);
job.destroy();
} catch (Exception e) {
e.printStackTrace();
} finally {
System.out.println("done");
synchronized (waiter) {
waiter.notify();
}
}
}
}
this code is the same code that write by other users in this
group.
can you help me to solve this problem and say me what can i
do ?
Thanks.
Omid.
2008/8/14 Martin Feller <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>>
Importing is not enough, you have to add required java
archives to your
classpath before compiling. These are GT4 provided archives
and the
archives that contain the stubs that are created when you
build your
program.
How to add the GT archives to you classpath:
source $GLOBUS_LOCATION/etc/globus-devel-env.sh
Once you have all necessary jars in you classpath try to
compile again.
http://gdp.globus.org/gt4-tutorial/multiplehtml/index.html
is a good starting point for programming with GT4
Martin
omid boroumand wrote:
Hi,
Thanks for your help.
I look at the GRAM document and then write a simple
program .
in this program I import some classes but when
compile
program with javac , i see this error :
------------------
[EMAIL PROTECTED]:/usr/local/GT4-examples/gt4book-
examples> javac
SubmitJob.java
SubmitJob.java:3: package
org.apache.axis.message.addressing
does not exist
import org.apache.axis.message.addressing.Address;
^
SubmitJob.java:4: package
org.apache.axis.message.addressing
does not exist
import
org.apache.axis.message.addressing.EndpointReferenceType;
^
SubmitJob.java:5: package
org.globus.examples.stubs.Factory does
not exist
import org.globus.examples.stubs.Factory.CreateResource;
^
SubmitJob.java:6: package
org.globus.examples.stubs.Factory does
not exist
import
org.globus.examples.stubs.Factory.CreateResourceResponse;
^
SubmitJob.java:7: package
org.globus.examples.stubs.Factory does
not exist
import
org.globus.examples.stubs.Factory.FactoryPortType;
^
SubmitJob.java:8: package
org.globus.examples.stubs.Factory.service does not exist
import
org
.globus
.examples.stubs.Factory.service.FactoryServiceAddressingLocator;
^
SubmitJob.java:24: package
org.apache.axis.message.addressing
does not exist
import org.apache.axis.message.addressing.AttributedURI;
^
------------------
Do you can help me that how I can to introduce needed
package to
my programs?
Thanks.
Omid.
2008/8/13 Maciej Nowicki <[EMAIL PROTECTED]>
Dnia 13-08-2008 o godz. 23:14 omid boroumand
napisał(a):
Surround line
JobDescriptionType jobDescription =
RSLHelper.readRSL(jobDescriptionFile);
with try - catch (RSLParseException) block.
I see you don't use any IDE like Eclipse - I strongly
advise
you to do
so - it'll help you in dealing with errors like this
one and
therefore
speed up your development.
And remember submitting a job in java is much mroe
than just
those four
lines of code - take a look on WS-GRAM
documentation at
www.globus.org/toolkit <http://www.globus.org/
toolkit>
<http://www.globus.org/toolkit>
<http://www.globus.org/toolkit>
> Hi,
> i installed GT4.2 and want submit job with client
API to
globus.
> but when i compile the ' SubmitJob.java ' , I
see this
error :
> -------------
> [EMAIL PROTECTED]:/usr/local/GT4-examples> javac
-classpath
./build/stubs/classes/:$CLASSPATH SubmitJob.java
> SubmitJob.java:71: unreported exception
org.globus.exec.utils.rsl.RSLParseException; must be
caught
or declared
to be thrown
> JobDescriptionType
jobDescription =
RSLHelper.readRSL(jobDescriptionFile);
> public class SubmitJob {
>
>
> public static void main(String[] args)
> {
> File jobDescriptionFile = new
File("Test_Job.xml");
> JobDescriptionType jobDescription =
RSLHelper.readRSL(jobDescriptionFile);
>
> GramJob TestJob=new GramJob(jobDescription);
> TestJob.submit(omid:8443);
> }
> }
pozdrawiam / kind regards
Maciej Nowicki
----------------------------------------------------
Efekciarskie auta, noweczesne gadżety, wytworne
szmatki.
Lajfstajlowy serwis dla koneserów prawdziwego
luksusu.
Zobacz: http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451>
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451>>
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451>
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451
<http://klik.wp.pl/?adr=www.LuxClub.pl&sid=451>>>