This is my simple contract
contract Test {
    /* This creates an array with all balances */
    mapping (address => uint256) public balanceOf;
    /* Initializes contract with initial supply tokens to the creator of the contract */
    function Test(
        uint256 initialSupply
        ) {
        balanceOf[msg.sender] = initialSupply;              // Give the creator all initial tokens
    }
    /* Send coins */
    function transfer(address _to, uint256 _value) {
        if (balanceOf[msg.sender] < _value) throw;           // Check if the sender has enough
        if (balanceOf[_to] + _value < balanceOf[_to]) throw; // Check for overflows
        balanceOf[msg.sender] -= _value;                     // Subtract from the sender
        balanceOf[_to] += _value;                            // Add the same to the recipient
    }
function gettokenBalance(address to)constant returns (uint256){
          return balanceOf[to];
       }
}
When i am transferring tokens more than intial supply to another account the function transfershould throws exception.
How can i handle this exception and get to know transaction cannot complete.I am using web3j and calling function transfer like
Test test = Test.load(contractObj.getContractAddress(), web3j, credentials, gasprice,gaslimit);
TransactionReceipt balanceOf = test.transfer(new Address(address), transferBalance).get();