Unfortunately this is a bug with the packaging of the Portfolio demo war file. The good news is that it will be fixed in the 4.0.2 DSE release and that there is a workaround. That workaround is to add a missing jar to the demo war, which you can do with a couple of shell commands.
First, you need to locate the jar that should be included but isn't. This file is named thrift-server-0.3.3.jar
and is included along with the other Cassandra libraries in a DSE installation. If you're running DSE from a tarball, you can find it in the resources/cassandra/lib directory
. If you installed DSE from the .deb or.rpm packages, it's located in /usr/share/dse/cassandra/lib
. Next, you need to create the correct directory structure so that when you added to the war file the jar has has the right path.
mkdir -p /tmp/WEB-INF/lib
cp thrift-server-0.3.3.jar /tmp/WEB-INF/lib/
Finally, you need to add the jar to the Portfolio demo war. In a tarball installation this is demos/portfolio_manager/website/webapps/portfolio.war
and in package installs it is found in /usr/share/dse-demos/portfolio_manager/website/webapps/portfolio.war
. The command to run to update the war is (using the tarball location here):
jar uf demos/portfolio_manager/website/webapps/portfolio.war -C /tmp WEB-INF/lib
(note the space between /tmp
& WEB-INF
)
You'll need to have the jar
executable on your path, or use its full path.
After updating the war file and restarting the webserver, you should find that the errors disappear and you can open the page in a browser.