Installation

Problem using the library

Problem using the library

by Douglas Brown -
Number of replies: 48
Today I installed 2.7 on an Ubuntu server running 12.04.2. All went well - I was able to create the admin class and a test course. However, I cannot add problems to a homework set. The library opens, I can steer to a set of desired problems, view them, attempt them and edit them but when I click "add" nothing happens. No error messages are generated. What am I missing?

Thanks - Doug
In reply to Douglas Brown

Re: Problem using the library

by Arnold Pizer -
Hi Doug,

Have you checked the target set to make sure they are not being added?  I ask because maybe they are being added but it looks like nothing is happening because the message "(in target set)" is not getting displayed. In the bar above a problem on the left you should see "Add   Path ..." (clicking on ... gives the path) and on the left possibly a msg "(in target set)" and icons for Randomizing, Viewing, Editing and Hiding the problem.  At least on some hardware when running this on VMware Player and not adding the recommended additions to improve video performance, etc for WMware, these messages and icons were not displayed. But when I checked the set, the problems had been added.  Trying this again on the same hardware with VMware Player, but this time installing the recommended tools when prompted, all messages and icons are displayed.  Not sure if your problem is at all related.

Note that something else may be going on.  See the post in the main forum, http://webwork.maa.org/moodle/mod/forum/discuss.php?d=3019

Arnie


In reply to Arnold Pizer

Re: Problem using the library

by Douglas Brown -
Thanks for the reply, Arnie. I had looked at the set and no problems were there. Checking my apache error log this morning, I am getting the same message as Marc, so the hunt continues.

Thanks again,
Doug
In reply to Douglas Brown

Re: Problem using the library

by John Jones -
My first guess is that this is an authentication problem.  For people who are having difficulties, does your configuration use an authentication method other than the regular webwork login?  (I.e., do you use a module in the webwork2/lib/WeBWorK/Authen directory?

John

In reply to John Jones

Re: Problem using the library

by Douglas Brown -
When I first encountered the problem I was not using any module in the Authen directory. I have since enabled LDAP and the problem is still there. In all cases I am acting as admin.

Thanks,
Doug
In reply to Douglas Brown

Re: Problem using the library

by Arnold Pizer -
Hi Doug,

I'm running WeBWorK 2.7 on Ubuntu 12.04.2 and don't see your bug so there must be something subtle going on.  If you have a virtual machine environment available (e.g. VMware, VirtualBox) maybe you can use the WeBWorK virtual machine image (http://webwork.maa.org/wiki/Installing_from_WW2.7_Ubuntu12.04_Vanilla_Virtual_Machine_Image) and tell us what is different between your installation and the virtual machine one.  The virtual machine image was built following the instructions http://webwork.maa.org/wiki/Installation_Manual_for_2.7_on_Ubuntu_12.04 . Do you know how your installation may differ?

Arnie


In reply to Douglas Brown

Re: Problem using the library

by John Jones -
Just to check two other things for clues:
  1. Since you can get to problems, I take it that when picking a Subject and Chapter in the library browser (when looking at the NPL), the Chapter (resp. Section) menus update themselves automatically?
  2. If you open the javascript console in your browser, clicking "View Problems" should clear the console.  Then when you click "Add" should add one entry to the console labelled "Object".  Does it appear?  If you open it (there should be a little triangle) and then open result_data, you should get a list of paths to files in the current set.  Do you get this?
John
In reply to John Jones

Re: Problem using the library

by Douglas Brown -
Thanks for your help John and Arnie. I will look into the virtual image later. Following up on John's ideas:

1. When I select a Subject, the Chapter menu will not update unless I hit "Advanced Search" and after a chapter selection the Section menu will not update until I hit "Update Menus."

2. When I select a problem, the Java console returns:

SyntaxError: JSON.parse: unexpected character @ https://math.catawba.edu/webwork2_files/js/jquery-1.7.1.min.js:2

Along the way there were a number of other errors reported, all seem to have to do with formatting issues, though everything appears fine on-screen.

This installation was done using Jason Aubry's install script (I had done one according to the manual at the wiki and ran into some database issues at the end - had the same ones at the end of running the script which turned out to be some password conflicts). This is on a virtual server on the main IT server at Catawba. I ran the script on a desktop at home earlier in the summer and this issue is not present there.

Doug
In reply to Douglas Brown

Re: Problem using the library

by John Jones -
OK, I think we are making progress.

First, there is a configuration option to have the old library browser 1.  If you get sufficiently frustrated, you can switch to that (in localOverrides.conf, uncomment the line with librarybrowsernojs).  At worst, you go back to tried and true version of the library browser.

Next, a quick explanation as to what is happening.  The new library browser 1 does some things with javascript/ajax.  This means things can happen without redrawing the whole web page (something which can be particularly slow with the library browser if it means rendering 10-20 webwork problems).

The fact that the menus are not updating means that this is failing, and it is usually a general breakdown in javascript communicating with the server.

In the error message I see a url starting with https.  Is server_root_url set to match https (it is set in site.conf)?

John



In reply to John Jones

Re: Problem using the library

by Marc BUFFAT -
Hi Jones,
using the librarybrowser2, I can add new problem from the library using the following localOverrides.conf

# librarybrowsernojs => 1,
librarybrowser1 => 1,
librarybrowser2 => 1,
# librarybrowser3 => 1,

with librarybrowser1, the add button does not work and I get php error log
Furthermore with librarybrowser2, I get an instantaneous list of subject, whereas I add to click to "view problem" to get the list (which is very slow)

Thus with librarybrowser2 enable, I have a workaround solution

Regards
Marc
In reply to John Jones

Re: Problem using the library

by Douglas Brown -
John,

Thanks for the information. I may well bail out, but the problem is intriguing - server_root_url is indeed set to match the https address

Doug
In reply to John Jones

Re: Problem using the library

by Danny Glin -
I am getting similar issues with my system upgraded from 2.6 to 2.7 (running on CentOS 5.9).  I've tried switching back to basic authentication, and verified that $server_root_url is set correctly.

Library Browser 2 isn't rendering math in jsMath or MathJax, so for now I'm reverting to librarybrowsernojs.

I'm probably not going to have time to troubleshoot this further before the term starts.  Since this may be related to versions of perl packages, my next step is likely to try again on CentOS 6 (which also cures the perl 5.8.8 incompatibilities with WW2.7).

Danny
In reply to Danny Glin

Re: Problem using the library

by Michael Gage -
The most stable library at the moment is librarybrowser (no number) -- library browser 2 and 3 are still more proof of concept.

librarybrowser (or rather the webservice it depends on) does have some issues with authentication in some instances.  (And the error reporting in these cases is not helpful -- it often simply reports that some bad character is being detected in the response).


In reply to John Jones

Re: Problem using the library

by Michael Gage -
I'm not able to duplicate this problem on my machines (I'm using 3 or 4).  
I'm using the latest version of the master branch (which is 2.7) and is quite
stable.  

I just want to recommend that 
everyone update to that to make sure that we are tracking down problems in the same code.

cd webwork2
git branch 
    should show master branch starred
git pull  origin

should bring you up to date.
Do the same with pg.
Then restart the server.
In reply to Michael Gage

Re: Problem using the library

by Douglas Brown -
This process shows that all is up to date. The problem is also browser and machine independent (at least on the 2 I have at home).

Doug
In reply to Michael Gage

Re: Problem using the library

by Marc BUFFAT -
I confirm, I am using the latest version of the master branch
only Library Browser v2 is working
the two other v1 and v3 does not
I am running the latest 64bits Ubuntu 12.04 with php 5.3.4 and perl 5.14.2
Marc
In reply to Douglas Brown

Re: Problem using the library

by Louis Zulli -
Our IT folks recently installed the latest WeBWorK (2.7 from master on GitHub) software on a development server running Ubuntu 10.04.1 LTS. The system has seemed slow to respond in general, but in particular, it takes more than a minute for "(in target set)" to appear the first time the Add button is clicked. Subsequent clicks yield faster response time.

Does clicking the Add button actually work for you, but very, very slowly?

By the way, I set up an analogous WeBWorK system on my iMac at home (running OS X 10.6) and have no problem using Library Browser to add problems to a set.

Here is some version info for the Ubuntu system:

Server version: Apache/2.2.14 (Ubuntu)
Server built:   Sep 28 2010 12:53:28
Server's Module Magic Number: 20051115:23
Server loaded:  APR 1.3.8, APR-Util 1.3.9
Compiled using: APR 1.3.8, APR-Util 1.3.9
Architecture:   64-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT=""
 -D SUEXEC_BIN="/usr/lib/apache2/suexec"
 -D DEFAULT_PIDLOG="/var/run/apache2.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/apache2/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"

mysql  Ver 14.14 Distrib 5.1.41, for debian-linux-gnu (x86_64) using readline 6.1

This is perl, v5.10.1 (*) built for x86_64-linux-gnu-thread-multi



In reply to Louis Zulli

Re: Problem using the library

by Arnold Pizer -
Hi all,

Those of you who are having trouble with the Library Browser, what MySQL database engine are you using?  Look at http://webwork.maa.org/wiki/Installation_Manual_for_2.7_on_Ubuntu_12.04#MySQL_Security_and_Performance_Issuses,

specifically 

Now we change MySQL's default engine. The default engine is InnoDB as of MySQL 5.5.5 (MyISAM before 5.5.5) but (at least on some hardware) InnoDB seems to be 50-100 times slower than MyISAM. So we will change the default MySQL engine from InnoDB to MyISAM. Note that this change only applies to new tables, tables already constructed will continue to use InnoDB. But we haven't created any WeBWorK tables so we don't have to change the engine for any existing tables. Do the following
In reply to Louis Zulli

Re: Problem using the library

by John Jones -
Hi,

I can partly understand the cases where "Add" is not working.  I think it stems from an authentication failure, although it is difficult to debug without direct access to the machine (since I can't replicate the bug).  I may put more diagnostics put in the javascript console to help sort this out (they would be hidden from general view but can be used to help diagnose problems).

I can't think of a cause for the slow-then-faster behavior (assuming identical circumstances -- roughly the same number of problems being displayed and roughly the same sized target set).  The number of database calls involved with "Add" is tiny (probably only one), so I don't think mysql differences can account for this (it does make a huge difference in running OPL-update).

John

In reply to John Jones

Re: Problem using the library

by Danny Glin -
Does it make sense to force OPL tables to be MyISAM in the OPL-update script?
This wouldn't be hard to do.  Simply add ENGINE=MyISAM to each CREATE TABLE statement.  I don't know if this would cause problems for people with non-standard database configurations.

Danny
In reply to Danny Glin

Re: Problem using the library

by John Jones -
That sounds like a good idea to me.  From 5 minutes of reading up on wikipedia, it looks like myisam is ideal for the OPL database.

I don't know much about database engines, but it is possible that innodb (or something else) would be better for other tables.

Does anyone know anything about this, or if there is a good reason not to implement Danny's suggestion?

John

In reply to Douglas Brown

Re: Problem using the library

by Arnold Pizer -
Hi,

One thing that will cause the "Add" button not to work in the Library Browser is if in the site.conf file (in /opt/webwork/webwork2/conf/), $server_root_url is not configured correctly.  Most other parts of WeBWorK will work, but the  Library Browser will not.

Arnie
In reply to Arnold Pizer

Re: Problem using the library

by Sarunas Burdulis -
We have the same problem: Add button in "Library Browser" doesn't add problems to a set. ("Library Browser 2" works fine.)

System data:
Ubuntu 12.04.2 LTS x86_64 with latest updates.
WeBWorK 2.7 installed from git and up-to-date:
/opt/webwork/webwork2# git branch
* master
/opt/webwork/webwork2# git pull origin
Already up-to-date.

MySQL default engine is MyISAM, all the current courses have tables in MyISAM.

site.conf:$server_root_url can start either with http:// or https:// --- this does not affect Add button [mis]behaviour in our case.

When clicking Add in Library Browser the following errors are registered:

1. Apache error.log:
[Fri Aug 02 15:00:18 2013] [error] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Can't call method "result" on an undefined value at /opt/webwork/webwork2/lib/WebworkClient.pm line 165.\n * in WebworkClient::xmlrpcCall called at line 278 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator/instructorXMLHandler.pm\n * in WeBWorK::ContentGenerator::instructorXMLHandler::pre_header_initialize called at line 181 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator.pm\n * in WeBWorK::ContentGenerator::go called at line 370 of /opt/webwork/webwork2/lib/WeBWorK.pm, referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/

2. Firefox Web Console JavaScript:
[15:02:36.308] SyntaxError: JSON.parse: unexpected character @ https://webwork.dartmouth.edu/webwork2_files/js/jquery-1.7.1.min.js:2

In reply to Sarunas Burdulis

Re: Problem using the library

by John Jones -
Hi,

Here are a couple of things to check which I have seen cause problems.

Run "check_modules.pl apache2" from webwork2/bin.  Obviously, if there are any problems, they should be corrected.

If you are using a course created with another version of webwork, go to the admin course to upgrade it.

I have seen problems with either of these things cause problems.

Are these the only errors in the apache log file?

It might help to edit webwork2/lib/WebworkClient.pm to set UNIT_TESTS_ON to 1 (near line 90), restart apache, cause the error, and report the added diagnostics from the apache error log file.  (Then set it back.)

John

In reply to John Jones

Re: Problem using the library

by Michael Gage -
setting UNIT_TESTS_ON will give you more information -- so that is a good thing to try.  I had one other thought -- did you update webwork.apache2-config to correspond to webwork.apache2-config.dist?  In particular is this stanza uncommented?

########### WebworkWebservice XMLRPC handler ##########
PerlModule WebworkWebservice
<Location /mod_xmlrpc>
SetHandler perl-script
PerlHandler Apache::XMLRPC::Lite
PerlSetVar dispatch_to "WebworkXMLRPC"
PerlSetVar options "compress_threshold => 10000"
Order Allow,Deny
Allow from All
</Location>

If that is commented out the webservice won't work.

-- Mike


In reply to Michael Gage

Re: Problem using the library

by Sarunas Burdulis -
webwork.apache2-config is identical to webwork.apache2-config.dist and /mod_xmlrpc Location stanza is uncommented.

In reply to John Jones

Re: Problem using the library

by Sarunas Burdulis -
Thanks for all the suggestions.

Module check passes as much as I can tell:
/opt/webwork/webwork2/bin# ./check_modules.pl apache2

Checking your $PATH for executables required by WeBWorK...
$PATH= /usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/opt/webwork/webwork2/bin
/opt/webwork/webwork2/bin

mkdir found at /bin/mkdir
mv found at /bin/mv
mysql found at /usr/bin/mysql
tar found at /bin/tar
gzip found at /bin/gzip
latex found at /usr/bin/latex
pdflatex found at /usr/bin/pdflatex
dvipng found at /usr/bin/dvipng
tth found at /usr/bin/tth
giftopnm found at /usr/bin/giftopnm
ppmtopgm found at /usr/bin/ppmtopgm
pnmtops found at /usr/bin/pnmtops
pnmtopng found at /usr/bin/pnmtopng
pngtopnm found at /usr/bin/pngtopnm

Checking your @INC for modules required by WeBWorK...
@INC= /etc/perl
/usr/local/lib/perl/5.14.2
/usr/local/share/perl/5.14.2
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.14
/usr/share/perl/5.14
/usr/local/lib/site_perl
.

Benchmark found and loaded
Carp found and loaded
CGI found and loaded
Data::Dumper found and loaded
Data::UUID found and loaded
Date::Format found and loaded
Date::Parse found and loaded
DateTime found and loaded
DBD::mysql found and loaded
DBI found and loaded
Digest::MD5 found and loaded
Email::Address found and loaded
Errno found and loaded
Exception::Class found and loaded
File::Copy found and loaded
File::Find found and loaded
File::Path found and loaded
File::Spec found and loaded
File::stat found and loaded
File::Temp found and loaded
GD found and loaded
Getopt::Long found and loaded
Getopt::Std found and loaded
HTML::Entities found and loaded
HTML::Scrubber found and loaded
HTML::Tagset found and loaded
HTML::Template found and loaded
IO::File found and loaded
Iterator found and loaded
Iterator::Util found and loaded
JSON found and loaded
Locale::Maketext::Lexicon found and loaded
Locale::Maketext::Simple found and loaded
Mail::Sender found and loaded
MIME::Base64 found and loaded
Net::IP found and loaded
Net::LDAPS found and loaded
Net::OAuth found and loaded
Net::SMTP found and loaded
Opcode found and loaded
PadWalker found and loaded
PHP::Serialization found and loaded
Pod::Usage found and loaded
Pod::WSDL found and loaded
Safe found and loaded
Scalar::Util found and loaded
SOAP::Lite found and loaded
Socket found and loaded
SQL::Abstract found and loaded
String::ShellQuote found and loaded
Text::CSV found and loaded
Text::Wrap found and loaded
Tie::IxHash found and loaded
Time::HiRes found and loaded
Time::Zone found and loaded
URI::Escape found and loaded
UUID::Tiny found and loaded
XML::Parser found and loaded
XML::Parser::EasyTree found and loaded
XML::Writer found and loaded
XMLRPC::Lite found and loaded
Apache2::Request found and loaded
Apache2::Cookie found and loaded
Apache2::ServerRec found and loaded
Apache2::ServerUtil found and loaded

Courses are either upgraded or created already in current 2.7 version.

Here is Apache2 error.log while UNIT_TESTS_ON=1 and clicking "Add" in "Library Browser" (log segment for one click):

WebworkClient.pm 149 xmlrpcCall sent to https://webwork.dartmouth.edu/mod_xmlrpc
WebworkClient.pm 150 xmlrpcCall issued with command addProblem
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 151 input is: student_id displayMode userpassword fileName mode images recitation userID admin new_set_name new set maxdepth 0 password noprepostambles user admin envir HASH(0x7f56aad3e998) id session_key 63o6UGOnSQnvQOLVtdQujY0ytgIP7NgI email_address library_subjects course m13f13 library_sections permission 0 library_name Library new_password problem_state HASH(0x7f56aad3e968) courseID m13f13 subcommand library_keywords problemSeed 0 source library_textchapter status section last_name library_textsection set test1 command buildtree library_chapters pw extra_packages_to_load ARRAY(0x7f56aad25738) modules_to_evaluate ARRAY(0x7f56aad206d8) path Marsden-Tromba-Weinstein/setMTWCh1S4/problem_1.pg comment library_textbook answer_form_submitted 1 probList first_name
WebworkClient.pm 152 xmlrpcCall addProblem initiated webwork webservice object XMLRPC::Lite=HASH(0x7f56aad24ac0)
[Fri Aug 02 21:00:50 2013] [error] [client 129.170.28.39] Illegal field name 'APR::Table=HASH(0x7f56a8b60f68)' at /usr/local/share/perl/5.14.2/SOAP/Transport/HTTP.pm line 818.\n
There were a lot of errors
[Fri Aug 02 21:00:50 2013] [error] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Can't call method "result" on an undefined value at /opt/webwork/webwork2/lib/WebworkClient.pm line 165.\n * in WebworkClient::xmlrpcCall called at line 278 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator/instructorXMLHandler.pm\n * in WeBWorK::ContentGenerator::instructorXMLHandler::pre_header_initialize called at line 181 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator.pm\n * in WeBWorK::ContentGenerator::go called at line 370 of /opt/webwork/webwork2/lib/WeBWorK.pm, referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 149 xmlrpcCall sent to https://webwork.dartmouth.edu/mod_xmlrpc
WebworkClient.pm 150 xmlrpcCall issued with command listSetProblems
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Fri Aug 02 21:00:50 2013] [warn] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 151 input is: student_id displayMode userpassword fileName mode images recitation userID admin new_set_name new set maxdepth 0 password noprepostambles user admin envir HASH(0x7f56aad65510) id session_key 63o6UGOnSQnvQOLVtdQujY0ytgIP7NgI email_address library_subjects course m13f13 library_sections permission 0 library_name Library new_password problem_state HASH(0x7f56aad561b8) courseID m13f13 subcommand true library_keywords problemSeed 0 source library_textchapter status section last_name library_textsection set test1 command buildtree library_chapters pw extra_packages_to_load ARRAY(0x7f56aad3ec20) modules_to_evaluate ARRAY(0x7f56aad4c4d8) comment library_textbook answer_form_submitted 1 probList first_name
WebworkClient.pm 152 xmlrpcCall listSetProblems initiated webwork webservice object XMLRPC::Lite=HASH(0x7f56aad63bb0)
[Fri Aug 02 21:00:50 2013] [error] [client 129.170.28.39] Illegal field name 'APR::Table=HASH(0x7f56a8b611a8)' at /usr/local/share/perl/5.14.2/SOAP/Transport/HTTP.pm line 818.\n
There were a lot of errors
[Fri Aug 02 21:00:50 2013] [error] [client 65.96.5.255] [/webwork2/instructorXMLHandler] Can't call method "result" on an undefined value at /opt/webwork/webwork2/lib/WebworkClient.pm line 165.\n * in WebworkClient::xmlrpcCall called at line 278 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator/instructorXMLHandler.pm\n * in WeBWorK::ContentGenerator::instructorXMLHandler::pre_header_initialize called at line 181 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator.pm\n * in WeBWorK::ContentGenerator::go called at line 370 of /opt/webwork/webwork2/lib/WeBWorK.pm, referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/

In reply to Sarunas Burdulis

Re: Problem using the library

by Arnold Pizer -
Hi,

If you have a virtual machine environment available (VMware, VirtualBox, etc) you might grab the virtual machine image (http://webwork.maa.org/wiki/Installing_from_WW2.7_Ubuntu12.04_Vanilla_Virtual_Machine_Image)  and then try to figure out what is different between your set up and the virtual machine set up.

Arnie
In reply to Arnold Pizer

Re: Problem using the library

by Sarunas Burdulis -
FIXED.

Thanks for the suggestion!

We had much more in /usr/local/lib/perl/ and /usr/local/share/perl/, than in WeBWorK VM. Though WeBWorK 2.7 itself was installed fresh, quite a few Perl modules remained from previous installs, when they still had to be installed from CPAN. Of course /usr/local/ was overriding whatever came from Ubuntu repos. Removed /usr/local/.../perl/, reinstalled only a few modules, that are still needed from CPAN and all is fine now, i.e. "Add" in Library Browser works.


In reply to Sarunas Burdulis

Re: Problem using the library

by John Jones -
Great.

So it sounds like the problem stems from perl module versions.  The modules are there (so check_modules says it is ok), but there are probably some module(s) which needed to be updated.

Does anyone know if there is a perl-cpan command which says update all modules (for those who use perl's cpan to install modules)?

John

In reply to John Jones

Re: Problem using the library

by Sarunas Burdulis -
Modules from CPAN were at their latest CPAN version. The problem was that some of them needed to be of versions in Ubuntu 12.04.2 instead. I didn't find out which modules in particular.

Most likely they were modules related to HTTP/SOAP/XML RPC. This line in Apache error.log prompted at checking what's in /usr/local/share/perl/ vs. /usr/share/perl/"

[Mon Aug 05 10:22:22 2013] [error] [client 129.170.28.39] Illegal field name 'APR::Table=HASH(0x7fb40e19b708)' at /usr/local/share/perl/5.14.2/SOAP/Transport/HTTP.pm line 818.\n


In reply to John Jones

Re: Problem using the library

by Dick Lane -
Hi John,

CPAN does have an upgrade command. Its report command has a strong relation to that upgrade command.

Part 1 of the attached HTML file shows commands to report status of modules used by WeBWorK 2.7 together with quasi-automatic upgrade of those needing that work.

Note: the BUG in part 7 was probably due to some not-commented-out lines in database.conf.dist in the initial 2.7 release.

dick
In reply to Sarunas Burdulis

Re: Problem using the library

by John Jones -
This is helpful.  I think there were more error message before which are included in this output.  I still don't know what is going on, but the "Illegal field name" message seems like it may be at the heart of the problem.

It looks like we are not seeing some of the error messages because of an oversight in the code.  In webwork2/lib/WebworkClient.pm, near line 160 it says

print "Errors: \n $@\n End Errors\n" if $@;

whereas I think it should say

print STDERR "Errors: \n $@\n End Errors\n" if $@;

Then we would be seeing the error messages in the apache error log file.

One easy related question (sorry if you have already answered it).  Are you using the standard webwork login, or some other authentication module?

John



In reply to John Jones

Re: Problem using the library

by Sarunas Burdulis -
Below is error.log for a single click on "Add" with line 161 changed to output to STDERR (print STDERR "Errors: \n $@\n End Errors\n" if $@;). It outputs an additional error:

500 Internal Server Error at /opt/webwork/webwork2/lib/WebworkClient.pm line 159.

Line 159 in is:
eval { $result = $requestResult->call(REQUEST_CLASS.'.'.$command, $input) };

===== error.log =====
WebworkClient.pm 149 xmlrpcCall sent to https://webwork.dartmouth.edu/mod_xmlrpc
WebworkClient.pm 150 xmlrpcCall issued with command addProblem
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 151 input is: student_id displayMode userpassword fileName mode images recitation userID admin new_set_name new set maxdepth 0 password noprepostambles user admin envir HASH(0x7fb4101511b0) id session_key SQarat8zzkmJtbIjGx9bJ0j6Fjk4mCbk email_address library_subjects course m13f13 library_sections permission 0 library_name Library new_password problem_state HASH(0x7fb410151180) courseID m13f13 subcommand library_keywords problemSeed 0 source library_textchapter status section last_name library_textsection set test1 command buildtree library_chapters pw extra_packages_to_load ARRAY(0x7fb41013fab8) modules_to_evaluate ARRAY(0x7fb410132ee0) path Marsden-Tromba-Weinstein/setMTWCh1S6/problem_1.pg comment library_textbook answer_form_submitted 1 probList first_name
WebworkClient.pm 152 xmlrpcCall addProblem initiated webwork webservice object XMLRPC::Lite=HASH(0x7fb41008aef0)
[Mon Aug 05 10:22:22 2013] [error] [client 129.170.28.39] Illegal field name 'APR::Table=HASH(0x7fb40e19b708)' at /usr/local/share/perl/5.14.2/SOAP/Transport/HTTP.pm line 818.\n
There were a lot of errors
Errors:
500 Internal Server Error at /opt/webwork/webwork2/lib/WebworkClient.pm line 159.

End Errors
[Mon Aug 05 10:22:22 2013] [error] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Can't call method "result" on an undefined value at /opt/webwork/webwork2/lib/WebworkClient.pm line 165.\n * in WebworkClient::xmlrpcCall called at line 278 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator/instructorXMLHandler.pm\n * in WeBWorK::ContentGenerator::instructorXMLHandler::pre_header_initialize called at line 181 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator.pm\n * in WeBWorK::ContentGenerator::go called at line 370 of /opt/webwork/webwork2/lib/WeBWorK.pm, referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 149 xmlrpcCall sent to https://webwork.dartmouth.edu/mod_xmlrpc
WebworkClient.pm 150 xmlrpcCall issued with command listSetProblems
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
[Mon Aug 05 10:22:22 2013] [warn] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Use of uninitialized value in join or string at /opt/webwork/webwork2/lib/WebworkClient.pm line 151., referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/
WebworkClient.pm 151 input is: student_id displayMode userpassword fileName mode images recitation userID admin new_set_name new set maxdepth 0 password noprepostambles user admin envir HASH(0x7fb410179018) id session_key SQarat8zzkmJtbIjGx9bJ0j6Fjk4mCbk email_address library_subjects course m13f13 library_sections permission 0 library_name Library new_password problem_state HASH(0x7fb4101689a8) courseID m13f13 subcommand true library_keywords problemSeed 0 source library_textchapter status section last_name library_textsection set test1 command buildtree library_chapters pw extra_packages_to_load ARRAY(0x7fb410151468) modules_to_evaluate ARRAY(0x7fb410174538) comment library_textbook answer_form_submitted 1 probList first_name
WebworkClient.pm 152 xmlrpcCall listSetProblems initiated webwork webservice object XMLRPC::Lite=HASH(0x7fb4101786d0)
[Mon Aug 05 10:22:22 2013] [error] [client 129.170.28.39] Illegal field name 'APR::Table=HASH(0x7fb4103e3530)' at /usr/local/share/perl/5.14.2/SOAP/Transport/HTTP.pm line 818.\n
There were a lot of errors
Errors:
500 Internal Server Error at /opt/webwork/webwork2/lib/WebworkClient.pm line 159.

End Errors
[Mon Aug 05 10:22:22 2013] [error] [client 129.170.28.34] [/webwork2/instructorXMLHandler] Can't call method "result" on an undefined value at /opt/webwork/webwork2/lib/WebworkClient.pm line 165.\n * in WebworkClient::xmlrpcCall called at line 278 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator/instructorXMLHandler.pm\n * in WeBWorK::ContentGenerator::instructorXMLHandler::pre_header_initialize called at line 181 of /opt/webwork/webwork2/lib/WeBWorK/ContentGenerator.pm\n * in WeBWorK::ContentGenerator::go called at line 370 of /opt/webwork/webwork2/lib/WeBWorK.pm, referer: https://webwork.dartmouth.edu/webwork2/m13f13/instructor/setmaker/

In reply to Arnold Pizer

Re: Problem using the library

by D. Brian Walton -
Arnie,

Thanks for this tip.  We are in the process of upgrading a server from 2.5 to 2.7 as well as from the NPL to the OPL. We have a cloned server to debug things while the original is still live.  I was testing the Library Browser and had trouble with the popup menus.  The $server_root_url was still set to the old server. When I changed this to the cloned server address, things started working again.

For reference, here is the error that was posted in the error.log:

Error message for command:, searchLib, 
faultcode:, Client, 
faultstring:, Failed to access class (WebworkXMLRPC): Can't locate WebworkXMLRPC.pm in @INC (@INC contains: /opt/webwork/pg/lib /opt/webwork/webwork2/lib /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl . /etc/apache2) at (eval 1504) line 3.
End error message

Thanks again for the knowledge shared on the forums.

- Brian
In reply to Douglas Brown

Re: Problem using the library

by Rex Dieter -
I'm seeing similar symptoms with an upgraded 2.5->2.7 instance here.  Given some of the help/feedback already in the thread, I've enabled UNIT_TESTS, and this is what shows in error_log whenever one clicks "Add":

WebworkClient.pm 149 xmlrpcCall sent to https://math-webwork.unl.edu/mod_xmlrpc
WebworkClient.pm 150 xmlrpcCall issued with command listSetProblems
WebworkClient.pm 151 input is: student_id  displayMode  userpassword  fileName  mode images recitation  userID rdieter1 new_set_name new set maxdepth 0 password  noprepostambles  user rdieter1 envir HASH(0x7f2d250dfad8) id  session_key Gw2Jw1wgH8OfmZrgS6T0gmMyIBcwKTGi email_address  library_subjects  course 101 library_sections  permission 0 library_name Library new_password  problem_state HASH(0x7f2d250cd4f0) courseID 101 subcommand true library_keywords  problemSeed 0 source  library_textchapter  status  section  last_name  library_textsection  set foo command buildtree library_chapters  pw  extra_packages_to_load ARRAY(0x7f2d250dfc58) modules_to_evaluate ARRAY(0x7f2d250dfa90) library_textbook  comment  answer_form_submitted 1 probList  first_name 
WebworkClient.pm 152 xmlrpcCall listSetProblems initiated webwork webservice object XMLRPC::Lite=HASH(0x7f2d21866bb0)
Error message for command:, listSetProblems, 
faultcode:, Server, 
faultstring:, Unknown exception when trying to verify authentication. at /home/webwork/webwork2/lib/WebworkWebservice.pm line 223.
End error message

I'm using authen_CAS.conf :
$authen{user_module} = {
  "*" => "WeBWorK::Authen::CAS",
};
here.

In reply to Rex Dieter

Re: Problem using the library

by Rex Dieter -
I can confirm too,that using 
librarybrowser2 => 1,
seems to help/workaround the problem for me too.
In reply to Rex Dieter

Re: Problem using the library

by Michael Gage -
This is probably a genuine bug (or at least the lack of an important feature) in WebworkWebservice  code.  The original version had no authentication method at all -- which was fine as it was only used experimentally for the first three or four years and was safely obscure.   When we started using it to power things like the new library interfaces some authentication was needed to make sure that the requests were coming from a someone with some connection to webwork and the course.

The authentication mechanism which was added assumes that you are using the basic authentication module.  It needs to be rewritten so that authentication of the webservice request can be provided by any of the Authen modules.

Try temporarily using just the standard authentication and see if your site works. If so then I'm pretty sure that your problem is with the authentication procedure within the WebworkWebservice block of code.

Other problems have been more closely related to the fact that the webservice does not do the best job of error reporting.  So the errors that appear (e.g  APR::Table = .... )  are the result of trying to interpret an unfiltered error message that was returned instead of the usual return value of the request. 

Now that we are using it more frequently the WebworkWebservice and related webservices powered by SOAP and JSON  need to be rewritten so that they are more robust.

In reply to Michael Gage

Re: Problem using the library

by Alexander Basyrov -
I've run into a similar issue with the LibraryBrowser and the authentication - that is, when the course does not use basic authentication, the library browser 1 does not seem to work.

The following change in the WebworkWebservice code seemed to help:

(1) add one line to define the authenClass variable:
***
my $authen = $user_authen_module->new($self);
my $authenClass = ref $authen || $authen;
my $authz = WeBWorK::Authz->new($self);
***

(2) then rewrite the 'authentication' piece to use the $authenClass variable; had to disable strict refs for that.

********************
# now, here's the problem... WeBWorK::Authen looks at $r->params directly, whereas we
# need to look at $user and $sent_pw. this is a perfect opportunity for a mixin, i think.
my $authenOK;
eval {
no warnings 'redefine';
no strict 'refs';

local *{"${authenClass}::get_credentials"} = \&WebworkXMLRPC::get_credentials;
local *{"${authenClass}::maybe_send_cookie"} = \&WebworkXMLRPC::noop;
local *{"${authenClass}::maybe_kill_cookie"} = \&WebworkXMLRPC::noop;
local *{"${authenClass}::set_params"} = \&WebworkXMLRPC::noop;
local *{"${authenClass}::write_log_entry"} = \&WebworkXMLRPC::noop; # maybe fix this to log interactions FIXME
$authenOK = $authen->verify;
} or do {
*************************

While this hack makes the library browser work for non-basic authentication modules, is this a good way to fix problem?

-- Alex
In reply to Alexander Basyrov

Re: Problem using the library

by Hal Sadofsky -

We in Oregon are another victim of the "unable to add problems to a problem set" issue when using external authentication.

We are running WeBWorK 2.8.

This morning we enabled Shibboleth authentication.  Immediately we ran into this problem described of being unable to add problems to a problem set.

We found this thread and after looking unsuccessfully for extraneous perl modules decided to follow this solution that Alex Basyrov came up with (thank you Alex!).  It solves our problem, though I have the same concern about whether this is a good way to solve the problem.

Hal



In reply to Michael Gage

Re: Problem using the library

by Rex Dieter -
>  Try temporarily using just the standard authentication and see if your site works.

Yes, it seems that is so.
In reply to Michael Gage

Re: Problem using the library

by Alex Jordan -
Hi Mike, would you mind clearing up what you mean by using the standard authentication? Is there some lines of code to edit somewhere or something in a config file? Also, would it be wise to use Alexander Basyrov's hack to WebworkWebservice?

Are either of these things that I can do and feel good about moving into a large rollout?
In reply to Alex Jordan

Re: Problem using the library

by Michael Gage -
in this case by standard authentication I meant authentication against the users record in the WeBWorK database.  It is also possible now to check a user's password using LDAP, or various other external authenticators.  But if there are mysterious problems then a useful troubleshooting test would be to see if the same problem is still occurring when you are using authentication against the WeBWorK database.

Since I haven't been using those and WebworkWebservice authentication _might_ not be behaving properly.  This is clearly an important thing to get right before we release 2.8 into world.   


In reply to Rex Dieter

Re: Problem using the library

by Paul Vojta -
Sorry for being so late with this, but you should be able to fix the problem by downloading the current CAS.pm from the "master" branch on github: go to
https://github.com/openwebwork/webwork2/blob/master/lib/WeBWorK/Authen/CAS.pm
and then right-click on "Raw", select "Save link as", and copy it to the right place
(and restart webwork). The relevant parts are lines 37-50. Don't worry -- not much has changed in the authentication code since 2.7.
Sincerely,

Paul Vojta
In reply to Paul Vojta

Re: Problem using the library

by Hal Sadofsky -

Since we've also been having this problem on our WeBWorK 2.8 installation I went to see if Paul Vojta's solution of replacing CAS.pm would help us.

Naturally it does not for us, as that version of CAS.pm is identical to the one distributed with WeBWorK 2.8.

So there is some different problem with WeBWorK 2.8, Shibboleth authentication, and the library browser.

Hal

In reply to Hal Sadofsky

Re: Problem using the library

by Paul Vojta -
Another reason that it doesn't work for you is that you're using Shibboleth authentication, which doesn't involve CAS.pm. I suspect that similar changes to Shibboleth.pm may fix your problem, though. Unfortunately, I have no way of testing it here.

(Note that my post was in response to a post by Rex Dieter, who is using CAS.)

Sincerely,

Paul Vojta
In reply to Paul Vojta

Re: Problem using the library

by Hal Sadofsky -

Good point Paul about Shibboleth vs. CAS.  I guess I don't know how independent the different authentication modules are.

Nevertheless, replacing our Shibboleth.pm with the one from github also doesn't solve our problem, though in this case the modules aren't identical.  And I don't know this well enough to figure out what changes to CAS.pm solved the problem for CAS authentication in order to implement them in Shibboleth.pm.

So at least for now, we still need to use the edits Alex Basyrov suggests to solve our problem.

thanks,  Hal

In reply to Douglas Brown

Re: Problem using the library

by Alex Jordan -
Following the bit of this thread posted by Sarunas Burdulis and John Jones, and more specifically the perl module upgrade instructions from Dick Lane, my issues here have all been resolved. I thought I would clarify down here at the bottom since that solution is buried in the middle of this long thread. Specifically, in Library Browser 1 I can now do each of the things that I couldn't do before: use the Add problem button, navigate the OPL by subject, and use the rerandomize button.

Notes: While following the upgrade instructions, a few of the perl modules refused to upgrade to the most recent version, but the ones that would not upgrade are apparently not the culprits. I didn't track well enough to figure which one of those ~50 modules is the culprit.

I completed these upgrades in the evening and then checked how the Library Browser was behaving, and I think it was still behaving badly. But it was late, so maybe I didn't check very well. Then in the morning the first thing I did with this was to check again, and all was working. So I'm not sure if a server reboot was needed and happened overnight.
In reply to Douglas Brown

Re: Problem using the library - My Installation Experience

by Hedley Pinsent -
Seems that I had a problem with site.conf -
using 'localhost' instead of 'http://localhost'

screens are attached - hp
Attachment InstallationExperience.png