First you have to prove the identity b2=a2+ac for such triangles. It can be proved using the similar triangles in the diagram or alternatively from the Sine and Cosine Rules.

Method 1 By construction DABX is an isosceles triangle. The angle of this triangle at B is 180° - 2a, and hence the angles at A and X are a. Therefore DXAC and DABC are similar; hence
a
b
= BC
AC
= AC
XC
= b
a+c
,
and thus b2=a2+ac.

Method 2 By the Cosine Rule:
b2
= a2 + c2 -2ac cos2a
a2
= b2 + c2 -2bccos a
Subtracting the equations, using the double angle formula and rearranging them a bit we get :
2b2 - 2a2 = 2c(bcosa- acos2a+a).    (1)

By the Sine Rule:
a
sina
= b
sin2a
a
sin a
= b
2sinacosa
cosa
= b
2a
.     (2)

Combining (1) and (2):
2b2 - 2a2
= 2c( b2
2a
- 2ab2
4a2
+ a)
= 2c( b2
2a
- b2
2a
+ a)
b2 - a2
= ca
b2
= a2 + ac.

To find integer solutions, we may assume that a, b and c have no common factors. Then a and a+c have no common factors (for if p divides a and a+c then it divides c, and hence also b). As a(a+c)=b2, and as a and a+c are coprime, a and a+c must be perfect squares. Let a=u2, a+c=v2 so that
a=u2,     b=uv,     c=v2-u2.

Note that not every solution gives rise to a triangle (for all three triangle inequalities must be satisfied); for example, u=1 and v=4 gives (a,b,c) = (1,4,15) and this does not give a triangle. The following are a few examples of values which do give triangles:

u v a b c
2 3 4 6 5
3 4 9 12 7
3 5 9 15 16
4 5 16 20 9

Note: it can be proved that a, b and c give a triangle if and only if v > u > v/2; see Math. Gazette, Vol. 412, June 1976, p.130.