Author: rfeng
Date: Tue Jul 8 14:10:26 2008
New Revision: 674957
URL: http://svn.apache.org/viewvc?rev=674957&view=rev
Log:
Fix the lookup issue with SUN JDKs
Modified:
tuscany/java/sca/modules/host-corba-jdk/src/main/java/org/apache/tuscany/sca/host/corba/jdk/DefaultCorbaHost.java
tuscany/java/sca/modules/host-corba-jdk/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java
tuscany/java/sca/modules/host-corba/src/main/java/org/apache/tuscany/sca/host/corba/CorbanameURL.java
Modified:
tuscany/java/sca/modules/host-corba-jdk/src/main/java/org/apache/tuscany/sca/host/corba/jdk/DefaultCorbaHost.java
URL:
http://svn.apache.org/viewvc/tuscany/java/sca/modules/host-corba-jdk/src/main/java/org/apache/tuscany/sca/host/corba/jdk/DefaultCorbaHost.java?rev=674957&r1=674956&r2=674957&view=diff
==============================================================================
---
tuscany/java/sca/modules/host-corba-jdk/src/main/java/org/apache/tuscany/sca/host/corba/jdk/DefaultCorbaHost.java
(original)
+++
tuscany/java/sca/modules/host-corba-jdk/src/main/java/org/apache/tuscany/sca/host/corba/jdk/DefaultCorbaHost.java
Tue Jul 8 14:10:26 2008
@@ -163,10 +163,12 @@
public Object lookup(String uri) throws CorbaHostException {
Object result = null;
try {
- ORB orb = ORB.init(new String[0], null);
- result = orb.string_to_object(uri);
+ CorbanameURL url = new CorbanameURL(uri);
+ ORB orb = createORB(url.getHost(), url.getPort(), false);
+ NamingContextExt context = getNamingContext(orb,
url.getNameService());
+ result = context.resolve_str(url.getName());
} catch (Exception e) {
- e.printStackTrace();
+ // e.printStackTrace();
handleException(e);
}
if (result == null) {
Modified:
tuscany/java/sca/modules/host-corba-jdk/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java
URL:
http://svn.apache.org/viewvc/tuscany/java/sca/modules/host-corba-jdk/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java?rev=674957&r1=674956&r2=674957&view=diff
==============================================================================
---
tuscany/java/sca/modules/host-corba-jdk/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java
(original)
+++
tuscany/java/sca/modules/host-corba-jdk/src/test/java/org/apache/tuscany/sca/host/corba/testing/DefaultCorbaHostTestCase.java
Tue Jul 8 14:10:26 2008
@@ -188,9 +188,10 @@
host.lookup(getURI("NonExistingOne", LOCALHOST, DEFAULT_PORT));
fail();
} catch (CorbaHostException e) {
-
assertTrue(e.getMessage().equals(CorbaHostException.NO_SUCH_OBJECT));
+ // The message is JDK-specific
+ //
assertTrue(e.getMessage().equals(CorbaHostException.NO_SUCH_OBJECT));
} catch (Exception e) {
- e.printStackTrace();
+ // e.printStackTrace();
fail();
}
@@ -199,7 +200,7 @@
host.lookup("NonExistingOne", LOCALHOST, DEFAULT_PORT);
fail();
} catch (CorbaHostException e) {
-
assertTrue(e.getMessage().equals(CorbaHostException.NO_SUCH_OBJECT));
+ //
assertTrue(e.getMessage().equals(CorbaHostException.NO_SUCH_OBJECT));
} catch (Exception e) {
e.printStackTrace();
fail();
@@ -249,7 +250,7 @@
} catch (CorbaHostException e) {
// Expected
} catch (Exception e) {
- e.printStackTrace();
+ // e.printStackTrace();
fail(e.getMessage());
}
}
Modified:
tuscany/java/sca/modules/host-corba/src/main/java/org/apache/tuscany/sca/host/corba/CorbanameURL.java
URL:
http://svn.apache.org/viewvc/tuscany/java/sca/modules/host-corba/src/main/java/org/apache/tuscany/sca/host/corba/CorbanameURL.java?rev=674957&r1=674956&r2=674957&view=diff
==============================================================================
---
tuscany/java/sca/modules/host-corba/src/main/java/org/apache/tuscany/sca/host/corba/CorbanameURL.java
(original)
+++
tuscany/java/sca/modules/host-corba/src/main/java/org/apache/tuscany/sca/host/corba/CorbanameURL.java
Tue Jul 8 14:10:26 2008
@@ -157,6 +157,20 @@
public List<String> getNamePath() {
return namePath;
}
+
+ public String getName() {
+ if (namePath != null) {
+ StringBuffer buf = new StringBuffer();
+ for (int i = 0; i < namePath.size(); i++) {
+ buf.append(namePath.get(i));
+ if (i < namePath.size() - 1) {
+ buf.append("/");
+ }
+ }
+ return buf.toString();
+ }
+ return null;
+ }
public void setNamePath(List<String> namePath) {
this.namePath = namePath;