Home
The Toolkit for Online Communities
16685 Community Members, 1 member online, 2245 visitors today
Log In Register
OpenACS Home : Forums : OpenACS Development : Error sourcing xowiki-procs.tcl: invalid command name "attribute::exists_p" : One Message

Forum OpenACS Development: Re: Error sourcing xowiki-procs.tcl: invalid command name "attribute::exists_p"

I want xowiki to work as front page of a .LRN site but not necessarily inside communities.

I get this error when I click on "New Page":

oracle.c:3542:ora_tcl_command: error in `OCIStmtExecute ()': Error - OCI_NO_DATA
SQL:
begin
:1 := file_storage.get_root_folder(
package_id => :package_id
);
end;

while executing
"ns_ora exec_plsql_bind nsdb0 {
begin
:1 := file_storage.get_root_folder(
package_id => :package_id

....

Please, forget what I said about fs:new_root_folder.

I think that the problem is about getting the "fs_folder_id" with an empty "community_id" in ::xowiki::Page instproc edit when .LRN is installed:

set fs_folder_id ""
if {[info commands ::dotlrn_fs::get_community_shared_folder] ne ""} {
set fs_folder_id [::dotlrn_fs::get_community_shared_folder -community_id [::dotlrn_community::get_community_id]]
}

Maybe, this can be fixed inserting "xowiki package_id" and its "folder_id" in "fs_root_folders" table when xowiki is mounted not inside dotlrn.
Or maybe, adding another condition to the last "if" to check if "dotlrn" mounting point is in the url.

i have now tried an installation of dotlrn 2.3.1 + xowiki used outside of a community (as you sketched) in postgres, everything works as expected.

The problem appears to be different semantics in the OpenACS and Oracle versions of [fs::get_root_folder], when it is called with a package_id having no root folder. In PostgresSQL fs::get_root_folder -package_id 123 returns empty, while oracle throws apparently the error above.

I fixed the problem the easy way (in xowiki), a better fix would be to make the Postgres and Oracle versions of fs::get_root_folder to behave identical.

Best regards
-gustaf neumann

Thanks a lot Gustaf.

I upgraded xowiki with your change and it works correctly.

I will install xowiki version for dotlrn 2.3.1 on oracle,I will test the upgrade to 0.90. I will post the result of this with logs.

I think that the problem with fs::get_root_folder is complicado to fix because I think that it's no only for this function. I will post it to try fix it

Sorry replace complicato with complicated.

I think that the problem with fs::get_root_folder is complicated to fix because I think that it's no only for this function. I will post it to try fix it