Multiple Constraint Knapsack Problem Dynamic Programming
Yes. More precisely, for any fixed number of constraints (for example, weight and volume) the problem has a pseudo-polynomial time algorithm based on dynamic programming. 

The idea in your comment (add one more dimension to the dynamic programming table) is essentially correct. In the classic knapsack, for any $i=0,\ldots,n$ and $w=0,\ldots,W$, you compute the highest profit that you can get with items of type $\le i$ and total weight $\le w$ (so you can get an $O(nW)$ time algorithm). In the generalization, you also need to iterate on the total volume $v=0,\ldots,V$, which means an $O(n W V)$ time algorithm.