Forum OpenACS Development: Evaluation Package - Windows

Collapse
Posted by Ashish Talati on
Hi -

I have installed Win32-OpenACS Version 1.7 on Windows Vista. Everything so far works ( openacs, dotLRN, assignment package... ). I am trying to install evaluation applet via class Admin, but am getting following error.

couldn't open "/tmp/a09620": no such file or directory
while executing
"open $tmp_filename w"
(procedure "::content::revision::update_content" line 8)
invoked from within
"::content::revision::update_content -item_id $item_id -revision_id $revision_id -content $content -tmp_filename $tmp_filename -storage_type $stor..."
("uplevel" body line 8)
invoked from within
"uplevel 1 $transaction_code "
(procedure "db_transaction" line 39)
invoked from within
"db_transaction {
db_dml lock_objects "LOCK TABLE acs_objects IN SHARE ROW EXCLUSIVE MODE"
if {$revision_id eq ""} {
set revision_..."
(procedure "content::revision::new" line 54)
invoked from within
"content::revision::new -item_id $item_id -content_type $content_type -description $description -creation_date $creation_date -attributes [list [l..."
(procedure "evaluation::new_grade" line 19)
invoked from within
"evaluation::new_grade -new_item_p 1 -item_id $exams_item_id -content_type evaluation_grades -content_table evaluation_grades -content_id grade_id -nam..."
(procedure "evaluation::apm::package_instantiate" line 37)
invoked from within
"evaluation::apm::package_instantiate -package_id 3580"
("eval" body line 1)
invoked from within
"eval $command"
(procedure "apm_invoke_callback_proc" line 37)
invoked from within
"apm_invoke_callback_proc -package_key $package_key -type "after-instantiate" -arg_list [list package_id $package_id]"
(procedure "apm_package_instance_new" line 17)
invoked from within
"apm_package_instance_new -package_id $package_id -package_key $package_key -instance_name $package_name -context_id $context_id"
(procedure "site_node::instantiate_and_mount" line 39)
invoked from within
"site_node::instantiate_and_mount -node_name $mount_point -parent_node_id $parent_node_id -package_key $package_key -context_id $package_id "
(procedure "dotlrn::instantiate_and_mount" line 15)
invoked from within
"dotlrn::instantiate_and_mount $community_id [package_key]"
(procedure "dotlrn_evaluation::add_applet_to_community" line 5)
invoked from within
"dotlrn_evaluation::add_applet_to_community $community_id"
(procedure "AcsSc.dotlrn_applet.addapplettocommunity.dotlrn_evaluation" line 1)
invoked from within
"AcsSc.dotlrn_applet.addapplettocommunity.dotlrn_evaluation 2487"
("uplevel" body line 1)
invoked from within
"uplevel $func_and_args"
(procedure "apply" line 3)
invoked from within
"apply $proc_name $arguments"
(procedure "acs_sc_call" line 6)
invoked from within
"acs_sc_call dotlrn_applet $op $list_args $applet_key"
(procedure "applet_call" line 2)
invoked from within
"applet_call $applet_key AddAppletToCommunity [list $community_id]"
invoked from within
"set package_id [applet_call $applet_key AddAppletToCommunity [list $community_id]]"
("uplevel" body line 2)
invoked from within
"uplevel 1 $transaction_code "
(procedure "db_transaction" line 39)
invoked from within
"db_transaction {
set package_id [applet_call $applet_key AddAppletToCommunity [list $community_id]]

register_a..."
(procedure "dotlrn_community::add_applet_to_community" line 2)
invoked from within
"dotlrn_community::add_applet_to_community $community_id $applet_key"
("uplevel" body line 43)
invoked from within
"uplevel {
#
# Copyright (C) 2001, 2002 MIT
#
# This file is part of dotLRN.
#
# dotLRN is free software; you can redistribute it and/or modi..."
(procedure "code::tcl::d:/utilities/aolserver/servers/mtutorln/packages/..." line 2)
invoked from within
"code::tcl::$__adp_stub"
invoked from within
"if { [file exists $__adp_stub.tcl] } {

# ensure that data source preparation procedure exists and is up-to-date
adp_init tcl $__adp_stub
..."
("uplevel" body line 3)
invoked from within
"uplevel {

if { [file exists $__adp_stub.tcl] } {

# ensure that data source preparation procedure exists and is up-to-date
adp_init t..."
(procedure "adp_prepare" line 2)
invoked from within
"adp_prepare"
invoked from within
"template::adp_parse [file root [ad_conn file]] {}"
(procedure "adp_parse_ad_conn_file" line 5)
invoked from within
"$handler"
("uplevel" body line 2)
invoked from within
"uplevel $code"
invoked from within
"ad_try {
$handler
} ad_script_abort val {
# do nothing
}"
invoked from within
"rp_serve_concrete_file [ad_conn file]"
(procedure "rp_serve_abstract_file" line 60)
invoked from within
"rp_serve_abstract_file "$root/$path""
("uplevel" body line 2)
invoked from within
"uplevel $code"
invoked from within
"ad_try {
rp_serve_abstract_file "$root/$path"
set tcl_url2file([ad_conn url]) [ad_conn file]
set tcl_url2path_info..."

Any suggestions? I am thinking something to do with Temp directory, but not sure where to start.

Thanks

Collapse
Posted by Maurizio Martignano on
Dear Ashish, thanks for your message.
I believe you need to run the server as Administrator.

Hope it helps,
Maurizio

Collapse
Posted by Ashish Talati on
Maurizio -

Thanks for your reply. I am not sure what you meant by run as Administrator. I am logged in as Administrator and running browser as Administrator as well in Vista.

Thanks again.
Ashish

Collapse
Posted by Maurizio Martignano on
What I mean is that all the bat files in the C:\aolserver directory are to be run either:
1. by rigth-clicking on them and selecting "Run as Administrator"
or
2. by opening a "command prompt shell" always by clicking on the proper icon and selecting "Run as Administrator" and then starting the bat files from that shell.

Cheers,
Maurizio

Collapse
Posted by Ashish Talati on
Maurizio -

Thanks again. Actually I was running it as Windows services. But I did remove that and ran batch file as Administrator but have same error.

Any other suggestion?

Thanks
Ashish

Collapse
Posted by Nima Mazloumi on
You need to change acs-content-repository/tcl/content-revision-procs.tcl
line 195:
set tmp_filename [ns_mktemp /tmp/XXXXXX]
Apparently the developer assumed a *nix system. This will always break in Windows.
Try changing it to
set tmp_filename [ns_tmpnam]
and see what happens.
Collapse
Posted by Ashish Talati on
Thanks Nima.

I will try that option as well. But temporarily I was able to fix the issue by create /tmp Directory onto my root folder ( in my case D:\ ). So far I was able to add applet via Manage Applet. I will do further testing on it.

Thanks again Nima & Maurizio