Thanks Antoine,<br>
<br>
I tried tabs and it had the same effect. Actually a space seems to work in case when there is no arrays:<br>
String str = "{\nerror true\n}"; <br>
<br>
gets the error even though there is a space.<br><br>
Svetlana<br>
<br><div><span class="gmail_quote">On 10/13/06, <b class="gmail_sendername">Antoine Raux</b> <<a href="mailto:antoine@cs.cmu.edu">antoine@cs.cmu.edu</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div link="blue" vlink="blue" lang="FR">
<div>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hi Svetlana,</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Are you using actual tab
characters between slot names and values or spaces? RavenClaw expect tab
characters there (e.g. between "error" and "false", "results" and ":1", etc). Otherwise
I can't see anything strange in your frame. If that's not it, could you send
the exact exception and line number?</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">antoine</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<div>
<div style="text-align: center;" align="center"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">
<hr align="center" size="2" width="100%">
</span></font></div>
<p><b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma; font-weight: bold;" lang="EN-US">From:</span></font></b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma;" lang="EN-US">
<a href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu</a>
[mailto:<a href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu</a>] <b><span style="font-weight: bold;">
On Behalf Of </span></b>Svetlana Stenchikova<br>
<b><span style="font-weight: bold;">Sent:</span></b> Friday, October 13, 2006
9:25 AM<div><span class="e" id="q_10e41ebc91729b02_1"><br>
<b><span style="font-weight: bold;">To:</span></b> Dan Bohus<br>
<b><span style="font-weight: bold;">Cc:</span></b> <a href="mailto:ravenclaw-developers@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers@cs.cmu.edu</a><br>
<b><span style="font-weight: bold;">Subject:</span></b> Re: RavenclawDev:
returning frame from a back end; with lists</span></div></span></font></p>
</div><div><span class="e" id="q_10e41ebc91729b02_3">
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;"> </span></font></p>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;">Mistyped email - sorry -:<br>
<br>
String str = <br>
"{\n" +<br>
"error
false\n" +<br>
"results :1\n" +<br>
"{\n" +<br>
"{\n" +<br>
"date_time {\n" +<br>
"time {\n" +<br>
" start_time
1700\n" +<br>
"
end_time 1800\n" +<br>
"}\n" +<br>
"date {\n" +<br>
"
valid_date
true\n" +<br>
" year
2006\n" +<br>
" month 10\n" +<br>
" day
11\n" +<br>
" weekday 3\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}";<br>
</span></font></p>
<div>
<p><span><font face="Times New Roman" size="3"><span style="font-size: 12pt;">On 10/13/06, <b><span style="font-weight: bold;">Dan
Bohus</span></b> <<a href="mailto:dbohus@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">dbohus@cs.cmu.edu</a>>
wrote:</span></font></span></p>
<div link="blue" vlink="blue">
<div>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hi Svetlana, </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hmm, sorry, I'm a bit confused by the beginning
of it…</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">
String str = "{\nerror false\n}";<br>
/ "{\n" +<br>
"error
false\n" +</span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">Does
that compile in java? Or is that just a mistype in the email. O/w I can't see
anything with the naked eye, but you might try setting a breakpoint right on
the line in FrameConcept.cpp where RavenClaw crashes and see what the problem
is… Sorry I can't be more helpful, I hope you'll sort it out… We should have
had this "string frame" format documented somewhere really well… </span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">-Dan</span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<div>
<div style="text-align: center;" align="center"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">
<hr align="center" size="2" width="100%">
</span></font></div>
<p><b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma; font-weight: bold;" lang="EN-US">From:</span></font></b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma;" lang="EN-US">
Svetlana Stenchikova [mailto:<a href="mailto:svetastenchikova@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">svetastenchikova@gmail.com</a>] <br>
<b><span style="font-weight: bold;">Sent:</span></b> Friday, October 13, 2006
12:14 AM<br>
<span><b><span style="font-weight: bold;">To:</span></b> Dan Bohus</span><br>
<span><b><span style="font-weight: bold;">Cc:</span></b> <a href="mailto:ravenclaw-developers@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers@cs.cmu.edu</a></span><br>
<b><span style="font-weight: bold;">Subject:</span></b> Re: RavenclawDev:
returning frame from a back end; with lists</span></font></p>
</div>
<div><span>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">Hi, <br>
<br>
I am now trying to hard-code a string to return, just for a test:<br>
<br>
String str = "{\nerror
false\n}";<br>
/ "{\n" +<br>
"error
false\n" +<br>
"results :1\n" +<br>
"{\n" +<br>
"{\n" +<br>
"date_time {\n" +<br>
"time {\n" +<br>
" start_time
1700\n" +<br>
" end_time
1800\n" +<br>
"}\n" +<br>
"date {\n" +<br>
"
valid_date
true\n" +<br>
" year
2006\n" +<br>
" month 10\n" +<br>
" day
11\n" +<br>
" weekday 3\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}\n" +<br>
"}";<br>
GFrame newframe = new Clause("");<br>
newframe.setProperty(":outframe", str);<br>
<br>
and getting exception in FrameConcept.cpp on line 288<br>
<br>
Can anyone see a problem with this hard-coded string?<br>
<br>
thanks,<br>
Svetlana</span></font></p>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">On
10/12/06, <b><span style="font-weight: bold;">Svetlana Stenchikova</span></b>
<<a href="mailto:svetastenchikova@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">svetastenchikova@gmail.com</a>>
wrote:</span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">OK,
it worked after several replacements were done to the string:<br>
<br>
GFrame eventAdded = new Clause("");<br>
<br>
String strRes = tempFrame.toString();<br>
<br>
String newstr1 = strRes.replaceAll("\\{c",
"{\n");<br>
String newstr2 =
newstr1.replaceAll("\\\"", "");<br>
String newstr = newstr2.replaceAll("\\}",
"\n}");<br>
<br>
eventAdded.setProperty(":outframe", newstr);<br>
<br>
thanks,<br>
Svetlana</span></font></p>
<div>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">On
10/11/06, <b><span style="font-weight: bold;">Dan Bohus</span></b> <<a href="mailto:dbohus@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> dbohus@cs.cmu.edu</a>>
wrote:</span></font></p>
<div link="blue" vlink="blue">
<div>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hi Svetlana, </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Yes, you should indeed return a GFrame from the
java backend server. This GFrame should contain one string element, called
:outframe which contains the string representation you had below of the desired
structure (e.g. like for instance the RoomLine perl returns it). If you look
into the BackendServer for RoomLine, essentially what that does is take that
string representation and put it in an outframe string slot in a galaxy return
frame. </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hope this helps, but let me know if it doesn't</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Dan</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<div>
<div style="text-align: center;" align="center"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">
<hr align="center" size="2" width="100%">
</span></font></div>
<p><b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma; font-weight: bold;" lang="EN-US">From:</span></font></b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma;" lang="EN-US">
Svetlana Stenchikova [mailto: <a href="mailto:svetastenchikova@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">svetastenchikova@gmail.com</a>] <br>
<b><span style="font-weight: bold;">Sent:</span></b> Wednesday, October 11, 2006
3:32 PM<br>
<b><span style="font-weight: bold;">To:</span></b> Dan Bohus<br>
<b><span style="font-weight: bold;">Cc:</span></b> <a href="mailto:ravenclaw-developers@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers@cs.cmu.edu</a><br>
<b><span style="font-weight: bold;">Subject:</span></b> Re: RavenclawDev:
returning frame from a back end</span></font></p>
</div>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">Do you think it is possible to return a
structure from a java back-end in a format expected by RavenClaw?<br>
<br>
If so, could you please recomment how, and if not, could someone point to the
place in RavenClaw that I could modify to work around this issue?<br>
<br>
I am sorry to bother you with this question, but we have a demo coming up and
listing the events is one of the essential functionality that we wanted to
show. <br>
<br>
Thank you all for your help!<br>
<br>
Svetlana</span></font></p>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">On
10/10/06, <b><span style="font-weight: bold;">Svetlana Stenchikova</span></b>
<<a href="mailto:svetastenchikova@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">svetastenchikova@gmail.com</a>>
wrote:</span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">Thanks
Dan,<br>
<br>
this generally makes sense, but I am not sure how to do this in the java
server.<br>
<br>
The operation function in the java galaxy service returns a GFrame. <br>
<br>
I can set properties of this frame in any way, but I must return a GFrame, I think.
I tried declaring an operation that returns String and it causes runtime
exception:<br>
java.lang.ClassCastException: java.lang.String <br>
<br>
<br>
This is how a RoomLine return from a perl back end looks like:<br>
<br>
{<br>
suggested_refine none<br>
error false<br>
results :1<br>
{<br>
{<br>
date_time {<br>
time {<br>
start_time 1700<br>
end_time 1800<br>
}<br>
date { <br>
valid_date true<br>
year 2006<br>
month 10<br>
day 11<br>
weekday 3<br>
}<br>
}<br>
room_size 30<br>
room_projector true<br>
room_whiteboard true<br>
room_computer true<br>
room_network true<br>
room_location Wean Hall<br>
room_size_spec large<br>
room_number 4625<br>
}<br>
}<br>
}<br>
<br>
<br>
And here is how my java back end frame looks like:<br>
<br>
Server environment sending frame:<br>
{c java_be.add_event<br>
error "false"<br>
:hub_opaque_data {c admin_info<br>
:reply_requested 1<br>
:session_id "Default"<br>
:tidx 70<br>
:scriptless 1<br>
:timestamp [array: type GAL_FLOAT_64, 1 elements]<br>
:provider_id "[8]"<br>
:invoked_stype "java_be" } }<br>
<br>
Please make a suggestion on how to return a string from a java server.<br>
<br>
thank you,<br>
Svetlana</span></font></p>
<div>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">On
10/10/06, <b><span style="font-weight: bold;">Dan Bohus</span></b> <<a href="mailto:dbohus@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">dbohus@cs.cmu.edu</a> >
wrote:</span></font></p>
<div link="blue" vlink="purple">
<div>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Hi Svetlana, </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">I think this is the same problem with
"Ravenclaw frames" and "galaxy frames" but on the output
side. Basically what you're doing in the code below is constructing a galaxy
frame. Instead ravenclaw expects a single string in that galaxy frame which
contains the information in a single string in the "string Ravenclaw
frame" format… </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">If this message is too cryptic, let me know and I
can send you more details,</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US">Dan</span></font></p>
<p><font color="navy" face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial; color: navy;" lang="EN-US"> </span></font></p>
<div>
<div style="text-align: center;" align="center"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">
<hr align="center" size="2" width="100%">
</span></font></div>
<p><b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma; font-weight: bold;" lang="EN-US">From:</span></font></b><font face="Tahoma" size="2"><span style="font-size: 10pt; font-family: Tahoma;" lang="EN-US">
<a href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu</a>
[mailto:<a href="mailto:ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers-bounces@LOGANBERRY.srv.cs.cmu.edu </a>] <b><span style="font-weight: bold;">
On Behalf Of </span></b>Svetlana Stenchikova<br>
<b><span style="font-weight: bold;">Sent:</span></b> Tuesday, October 10, 2006
5:41 PM<br>
<b><span style="font-weight: bold;">To:</span></b> <a href="mailto:ravenclaw-developers@cs.cmu.edu" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ravenclaw-developers@cs.cmu.edu</a><br>
<b><span style="font-weight: bold;">Subject:</span></b> RavenclawDev: returning
frame from a back end</span></font></p>
</div>
<div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US">Hi,<br>
<br>
How should a back-end function of a ravenclaw dialog manager format a
frame?<br>
<br>
For example, I am expecting to get a "error" parameter from:<br>
<br>
CALL("java_be.add_event <event_add error>backend_error")<br>
<br>
backend_error is declared as:<br>
BOOL_SYSTEM_CONCEPT(backend_error)<br>
<br>
In the java back-end:<br>
<br>
public GFrame serverOpAddEvent(GFrame f) {<br>
...<br>
<br>
GFrame eventAdded = new Clause("event_add");<br>
<br>
eventAdded.setProperty("error",
"false");<br>
<br>
return eventAdded;<br>
}<br>
<br>
<br>
But the backend_error in DM does not get initialized. <br>
<br>
Is there a particular way that the return GFrame from the backend server has to
be generated?<br>
<br>
Thank you,<br>
Svetlana</span></font></p>
</div>
</div>
</div>
</div>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
</div>
</div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
</div>
</div>
</div>
</div>
<p style="margin-bottom: 12pt;"><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
</div>
</div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;" lang="EN-US"> </span></font></p>
</span></div>
</div>
</div>
</div>
<p><font face="Times New Roman" size="3"><span style="font-size: 12pt;"> </span></font></p>
</span></div></div>
</div>
</blockquote></div><br>